Оглавление:

8-битный компьютер: 8 шагов
8-битный компьютер: 8 шагов

Видео: 8-битный компьютер: 8 шагов

Видео: 8-битный компьютер: 8 шагов
Видео: 8-битный компьютер: финальная версия. Подключаем декодер инструкций и проверяем работу программ 2024, Ноябрь
Anonim
8-битный компьютер
8-битный компьютер

Чтобы смоделировать это, вам понадобится программное обеспечение под названием LOGISIM, это очень легкий (6 МБ) цифровой симулятор, который будет проводить вас через каждый шаг и советы, которым вам нужно следовать, чтобы получить конечный результат, и по пути мы узнаем, как компьютеры сделаны, сделав совершенно новый нестандартный язык ассемблера на нашем собственном !!!.

Эта конструкция основана на архитектуре фон Неймана, в которой одна и та же память используется как для данных команд, так и для данных программы, а одна и та же шина используется как для передачи данных, так и для передачи адреса.

Шаг 1. Приступим к созданию модулей

8-битный компьютер в целом сложен для понимания и изготовления, поэтому давайте разделим его на разные модули.

Среди всех наиболее распространенных модулей есть регистры, которые, по сути, являются строительными блоками цифровых схем.

LOGISIM очень удобен для пользователя, он уже имеет большинство из нижеперечисленных модулей во встроенной библиотеке.

модули:

1. АЛУ

2. Регистры общего назначения

3. АВТОБУС

4. Оперативная память

5. Регистр адреса памяти (MAR)

6. Реестр инструкций (IR)

7. Счетчик

8. Дисплей и регистр дисплея

9. Логика управления

10. Контроллер логики управления.

Задача состоит в том, чтобы эти модули взаимодействовали друг с другом с использованием общей шины в определенных заранее определенных временных интервалах, после чего можно было бы выполнить набор инструкций, таких как арифметические, логические.

Шаг 2: ALU (арифметико-логическая единица)

ALU (арифметико-логическая единица)
ALU (арифметико-логическая единица)
ALU (арифметико-логическая единица)
ALU (арифметико-логическая единица)
ALU (арифметико-логическая единица)
ALU (арифметико-логическая единица)

Сначала нам нужно создать специальную библиотеку под названием ALU, чтобы мы могли добавить ее в нашу основную схему (полный компьютер со всеми модулями).

Чтобы создать библиотеку, просто начните с обычной схемы, показанной на этом шаге, с использованием встроенного сумматора, вычитателя, умножителя, делителя и мультиплексора. сохрани это! и все !!!

поэтому, когда вам когда-либо понадобится ALU, все, что вам нужно сделать, это перейти к проекту> загрузить библиотеку> библиотека logisim найти ваш файл ALU.circ. Закончив со схемой, щелкните значок в верхнем левом углу, чтобы создать символ для схемы ALU.

вам необходимо выполнить эти шаги для всех модулей, которые вы создаете, чтобы в конце мы могли легко их использовать.

ALU - это сердце всех процессоров, как следует из названия, он выполняет все арифматические и логические операции.

наш АЛУ может выполнять сложение, вычитание, умножение, деление (можно модернизировать для выполнения логических операций).

Режим работы определяется 4-битным значением выбора следующим образом:

0101 для дополнения

0110 для вычитания

0111 для умножения

1000 на деление

модули, используемые внутри ALU, уже доступны во встроенной библиотеке LOGISIM.

Примечание: результат не сохраняется в ALU, поэтому нам нужен внешний регистр

Шаг 3: регистры общего назначения (регистры A, B, C, D, регистр дисплея)

Регистры общего назначения (Reg A, B, C, D, Display Reg)
Регистры общего назначения (Reg A, B, C, D, Display Reg)
Регистры общего назначения (Reg A, B, C, D, Display Reg)
Регистры общего назначения (Reg A, B, C, D, Display Reg)
Регистры общего назначения (Reg A, B, C, D, Display Reg)
Регистры общего назначения (Reg A, B, C, D, Display Reg)

Регистры в основном представляют собой n триггеров для хранения байта или более высокого типа данных.

поэтому создайте регистр, расположив 8 D-триггеров, как показано, а также сделайте для него символ.

Reg A и Reg B напрямую подключены к ALU как два операнда, но Reg C, D и регистр дисплея разделены.

Шаг 4: RAM

баран
баран

Наша оперативная память относительно мала, но она играет очень важную роль, поскольку в ней хранятся данные программы и данные инструкций, поскольку она состоит всего из 16 байт, мы должны хранить данные инструкции (код) в начале, а данные программы (переменные) в остальные байты.

LOGISIM имеет встроенный блок для оперативной памяти, поэтому просто включите его.

ОЗУ содержит данные, адреса, необходимые для запуска специальной программы сборки.

Шаг 5: регистр инструкций и регистр адреса памяти

Регистр команд и регистр адреса памяти
Регистр команд и регистр адреса памяти
Регистр команд и регистр адреса памяти
Регистр команд и регистр адреса памяти

По сути, эти регистры действуют как буферы, хранящие в себе предыдущие адреса и данные, а также выходы, когда они когда-либо требуются для ОЗУ.

Шаг 6: Часы Prescalar

Часы Прескалар
Часы Прескалар

Этот модуль был необходим, он делит тактовую частоту с предделителем, что приводит к снижению тактовой частоты.

Шаг 7: логика управления, ПЗУ

Логика управления, ПЗУ
Логика управления, ПЗУ
Логика управления, ПЗУ
Логика управления, ПЗУ

И самая важная часть, логика управления и ПЗУ, ПЗУ здесь, по сути, заменяет зашитую логику логики управления.

И модуль рядом с ним - это специально созданный драйвер для ПЗУ только для этой архитектуры.

Шаг 8: отображение

Отображать
Отображать

Здесь будет отображаться вывод, и результат также может быть сохранен в регистре дисплея.

Получите необходимые файлы ЗДЕСЬ.

Рекомендуемые: