Akela CPU has been written in SystemVerilog and has less than 200 lines.
|
19 hours ago | |
---|---|---|
archive | 20 hours ago | |
doc | 1 day ago | |
COPYING | 1 month ago | |
CREDITS | 1 day ago | |
Makefile | 19 hours ago | |
README.md | 2 weeks ago | |
alg0.vh | 2 weeks ago | |
bcd.svh | 1 day ago | |
bin2bcd.svh | 1 day ago | |
copy.vh | 20 hours ago | |
ctg.img | 2 weeks ago | |
fpu.svh | 2 weeks ago | |
log.txt | 20 hours ago | |
pantherauncia.sv | 20 hours ago | |
pc.sv | 20 hours ago | |
ptar | 20 hours ago | |
ptar.bak | 1 day ago | |
sin.img | 2 weeks ago | |
storag.svh | 20 hours ago | |
tape.img | 1 day ago | |
tape.svh | 1 day ago | |
tape2.img | 20 hours ago | |
tg.img | 3 weeks ago | |
unbcd.svh | 1 day ago |
Это процессор, который работает по принципу: "чем меньше, тем больше", что значит: нужно иметь наибольший функционал с наименьшим количеством команд.
Все вещи, которые не являются обязательными, делаются внешними устройствами, предоставляющими соответствующие интерфейсы. Хоть чайник к нему подключите! Если сделано все верно, система заработает. Демонстрация находится в файле "bcd.svh". Конвертёр BCD-чисел в обычные наглядно это демонстрирует. Кстати, это его единственное назначение.
Также "Panthera uncia" умеет вычислять тригонометрические функции: синус, косинус и тангенс. Математический сопроцессор возвращает всегда двоично-десятичные числа. Младшие 4 знака всегда являются дробной частью, т. к. используются Четырёхзначные Таблицы Брадиса и формула:
cos x = sin (90-x)
Разрядность процессора: 64 бит. Размер команды - 10 байт.
"Panthera uncia" имеет 16 регистров общего назначения, 4 регистра для работы с внутренней ОЗУ, 3 регистра и флаги для работы с шиной. Все регистры (разумеется, кроме флагов) имеют 32 бита. Флаги используется чтобы указать на операцию (чтение или запись) и на готовность данных для получения устройством или на то, что процессор "желает" читать данные (они к этому должны быть готовы), и поэтому дает устройству разрешение на передачу ему данных.
"Panthera uncia" раньше звался по-другому, но сейчас он а) стал 64-битным, б) начал поддерживать альтернативный способ ввода-вывода. И поэтому он был переименован.