Проектирование процессора ЭВМ

Этапы разработки блока операций и центрального устройства управления. Анализ комбинационной схемы, особенности разработки местного устройства управления. Характеристика схемы местного устройства управления. Проведение тестирования процессора ЭВМ.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 14.07.2012
Размер файла 2,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

"Проектирование процессора ЭВМ"

процессор разработка управление

Постановка задачи

Выполнить синтез микропрограмм операционного автомата (ОА) в виде содержательных граф - схем алгоритмов (ГСА). По содержательным граф - схемам алгоритмов вычертить ГСА с соответствующим кодированием микроопераций и логических условий.

Система памяти:

а) Опеpативная память (ОП) имеет емкость 16 четыpехpазpядных слов (ячейка РУ2).

б) Регистpовая память (РП) имеет емкость 4 четыpехpазpядных слов (ячейка РП1).

Фоpмат и пpедставление чисел: Целые числа с фиксиpованной запятой пpедставлены в обратном коде. Под запись числа отводится четыpе pазpяда. Самый левый pазpяд используется для пpедставления знака.

Фоpмат команд: Команды двухадpесные и двух фоpматов: "pегистp-pегистp" (РР) и "память-память" (ПП). В фоpмате РР записываются команды коротной опеpации, в фоpмате ПП - команды длинной опеpации и пеpехода. В фоpмате РР указываются пpямые адpеса 1-го и 2-го опеpандов, pасположенных в РП. В фоpмате ПП 1-й опеpанд указывается с помощью относительной адpесации с индексированием, 2-й опеpанд - прямого адpеса (оба опеpанда хpанятся в ОП). Результат опеpаций записывается по адpесу 1-го опеpанда. Команды фоpмата РР хpанятся в 2-х, а команды формата ПП -в 3-х последовательных ячейках ОП.

Опеpации:

а) УМHОЖЕHИЕ. Опеpация выполняется по алгоpитму умножения чисел в обратном коде с младших pазpядов множителя и сдвигом множимого влево (школьный метод) с коррекцией результата. Пpи нулевом значении текущего pазpяда множителя такт суммиpования не пpопускается. Пеpвый опеpанд - множимое, втоpой - множитель. Результат фоpмиpуется в 8-ми pазpядной сетке и помещается в пару смежных ячеек памяти с четным и нечетным адресами.

б) СДВИГ ВПРАВО. Втоpой опеpанд (двоичный код) сдвигаются на один pазpяд вправо. В сдвиге участвуют все 4 разряда операнда. Младший разряд выдвигается и теряется. В освобждающийся старший разряд вводится ноль. Устанавливается признак результата: 0- результат равен нулю, 1-результат не равен нулю. Результат помещается по адpесу пеpвого опеpанда.

в) ПЕРЕХОД ПО РАВЕНСТВУ НУЛЮ. Адpес в счетчике команд (СК) замещается адpесом пеpехода, если значение пpизнака pезультата pавно нулю. В пpотивном случае (СК)=(СК)+2. В качестве адpеса пеpехода используется исполнительный адpес первого операнда формата ПП. Команда пеpехода занимает 2 ячейки ОП.

Разработка блока операций

1) Алгоритм умножения.

А) Сумматор = 0

Б) Множимое сдвигается на три разряда вправо

В) Счётчик = 3

Г) Если счётчик больше нуля, то анализируется текущий разряд множителя, и если он равен единице, то к сумматору прибавляется множимое. Счётчик уменьшается на единицу. Множимое сдвигается на один разряд влево.

Д) Пункт Г повторяется для обработки всех трёх разрядов множителя.

Е) Если счётчик равен нулю, то анализируется знаковый разряд множителя и если он равен 1 производится коррекция: Из Сумматора вычитается множимое, представленное в обратном коде, и прибавляется Множимое, сдвинутое на три разряда вправо.

2) Алгоритм сдвига в вправо

А) Сдвинутое = сдвигаемое умножить на одну вторую.

Б) Знаковый разряд Сдвинутого = 0

В) Если свдинутое равно нулю, то признак результата = 0.

Г) Если сдвинутон не равно нулю, то признак результата = 1

3) Схема блока операций:

Схема

Регистр А(ra) - предназначен для принятия из центрального устройства управления, хранения, либо сдвига на один разряд в право множимого.

entity ra is

Port ( a : in STD_LOGIC_VECTOR (3 downto 0);

l : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (7 downto 0);

ce, clk : in STD_LOGIC);

end ra;

architecture Behavioral of ra is

signal state: STD_LOGIC_VECTOR (7 downto 0);

begin

process (clk)

begin

if clk'event and clk = '1' then

if ce = '1' then

if l = '1' then state <= a(3)&a(3)&a(3)&a(3)&a;

else state <= state(6 downto 0)&state(7);

end if;

end if;

end if;

end process;

d <= state;

end Behavioral;

Регистр B(rb) - предназначен для принятия из центрального устройства управления, хранения, либо сдвига на один разряд в лево множителя, а так же для выработки признаков текущего разряда множителя и знака множителя .

entity rb is

Port ( b : in STD_LOGIC_VECTOR (3 downto 0);

q : out STD_LOGIC_VECTOR (3 downto 0);

l, ce, clk : in STD_LOGIC;

f1, f2 : out STD_LOGIC);

end rb;

architecture Behavioral of rb is

signal state: STD_LOGIC_VECTOR (3 downto 0);

begin

process (clk)

begin

if clk'event and clk = '1' then

if ce = '1' then

if l = '1' then state <= b;

else state <= state(3)&state(3 downto 1);

end if;

end if;

end if;

end process;

q <= state;

f1 <= state(3);

f2 <= state(0);

end Behavioral;

Комбинационная схема 1 (КС1) - предназначена для принятия операнда из регистра А либо в прямом, либо в обратном коде, либо коррекции, либо нуля.

entity kc1 is

Port ( a : in STD_LOGIC_VECTOR (7 downto 0);

ce, cod : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (7 downto 0));

end kc1;

architecture Behavioral of kc1 is

signal y: STD_LOGIC_VECTOR(1 downto 0);

begin

y <= ce & cod;

with y select

d <= a when "11",

not a when "10",

a(7)&a(7)&a(7)&a(7 downto 3) when "01",

"00000000" when others;

end Behavioral;

Комбинационная схема 2 (КС2) - предназначена для принятия операнда из регистра B, либо результата сложения из регистра результатов.

entity kc2 is

Port ( b : in STD_LOGIC_VECTOR (3 downto 0);

a : in STD_LOGIC_VECTOR (7 downto 0);

q : out STD_LOGIC_VECTOR (7 downto 0);

Op: in STD_LOGIC);

end kc2;

architecture Behavioral of kc2 is

begin

q <= a when Op = '0'

else

'0'&'0'&'0'&'0'&'0'&b(3 downto 1);

end Behavioral;

Сумматор (alu) - предназначен для принятия данных либо из комбинационной схемы 1, либо из комбинационной схемы 2, и осуществления суммирования.

entity alu is

Port ( a, b : in STD_LOGIC_VECTOR (7 downto 0);

s : out STD_LOGIC_VECTOR (7 downto 0));

end alu;

architecture Behavioral of alu is

begin

pr1: process(a, b)

variable sym: STD_LOGIC_VECTOR (8 downto 0);

begin

sym:=('0'&a) + ('0'&b);

if (sym(8) = '1')then sym(8):='0'; sym := sym + "00000001";

end if;

s <= sym(7 downto 0);

end process pr1;

end Behavioral;

Регистр результата (rr) - предназначен для принятия результата сложения из сумматора.

entity rr is

Port ( d : in STD_LOGIC_VECTOR (7 downto 0);

ce, clk, r : in STD_LOGIC;

q : out STD_LOGIC_VECTOR (7 downto 0));

end rr;

architecture Behavioral of rr is

signal state: STD_LOGIC_VECTOR (7 downto 0);

begin

process (clk)

begin

if (clk'event and clk = '1') then

if (r = '1') then state <= "00000000";

elsif (ce = '1') then state <= d;

end if;

end if;

end process;

q <= state;

end Behavioral;

Комбинационная схема 3, признак результата (KC3mem) - предназначена для определения признака результата и его хранения.

entity kc3mem is

Port ( a: in STD_LOGIC_VECTOR(7 downto 0);

ce, clk : in STD_LOGIC;

prr: out STD_LOGIC);

end kc3mem;

architecture Behavioral of kc3mem is

signal d: STD_LOGIC;

begin

d <= (a(7) or a(6) or a(5) or a(4) or a(3) or a(2) or a(1) or a(0));

process(clk)

begin

if clk'event and clk = '1' then

if ce = '1' then prr <= d;

end if;

end if;

end process;

end Behavioral;

Разработка местного устройства управления

Управляющие сигналы и логические условия:

Таблица. 1)

Сигнал

Операция

Y[1]

Вход разрешения работы регистра А

Y[2]

1 - Загрузка множителя в регистр А

0 - Сдвиг множителя влево на 1 разряд

Y[3]

Вход разрешения работы регистра Б

Y[4]

1 - Загрузка множимого в регистр Б

0 - Сдвиг множимого вправо на 1 разряд

Y[5]

Y[6]

11 - Снятие с регистра А прямого значения операнда

10 - Снятие с регистра А инверсного значения операнда

01 - Снятие с регистра А сдвинутого на 3 разряда вправо значение операнда.

Y[7]

Вход разрешения синхронизации в регистре результата

Y[8]

Вход синхронной очистки регистра результата

Y[9]

1 - Подключение к сумматору регистра результата

0 - Подключение к сумматору регистра Б

Y[10]

Вход разрешения записи признака результата в регистр признака

Y[11]

Разрешение инкремента i

Таблица

Сигнал

Логическое условие

F1

Знак множителя

F2

Анализируемый разряд множителя

Признак обработки последнего разряда множителя

2) Алгоритм микропрограммы выполнения операции сдвига:

Рис.

Алгоритм микропрограммы выполнения операции умножения:

Рис.

3) Синтез КС1:

Таблица

Операция

Переход

KOP

F1

Fc

P4

P3

P2

P1

P0

D4

D3

D2

D1

D0

Умножение

P0->P1

P1->P2

P2->P1

P2->P3

P2->P4

P3->P4

P4->

0

X

X

X

1

0

X

X

X

X

0

1

1

X

X

0

0

0

0

0

0

1

0

0

0

0

0

1

0

0

0

1

1

1

0

0

0

1

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

0

1

0

0

0

0

1

0

0

0

0

0

1

0

1

0

0

0

0

0

0

0

0

0

0

0

Сдвиг в право

P0->P1

P1->P2

P2->

1

X

X

X

X

X

X

0

0

0

0

0

0

0

0

1

0

1

0

1

0

0

0

0

0

0

0

0

0

1

0

1

0

0

0

0

0

D0 = 0

D1 = P0 v P2 KOP Fc

D2 = P1

D3 = P2 F1 Fc KOP

D4 = (P2 Fc F1 v P3) KOP

Синтез КС2 и КС4:

Таблица

KOP

P0

P1

P2

P3

P4

0

Умножение

Y[1], Y[2], Y[3], Y[4], Y[8]

Y[5]( F2 )

Y[6]( F2 ) Y[7],Y[11]

Y[1], Y[3]

Y[5],

Y[7]

Y[6](F1)

Y[7](F1)

SKO

1

Сдвиг в право

Y[3],Y[4]

Y[8],Y[9]

Y[7], Y[9]

Y[9],Y[10],

SKO

- - -

- - -

Y[1] = (P0 v P2) KOP

Y[2] = P0 KOP

Y[3] = P0 v P2 KOP

Y[4] = P0

Y[5] = (P1 F2 v P3) KOP

Y[6] = (P1 F2 v P4 F1) KOP

Y[7] = P1 v (P3 v P4 F1) KOP

Y[8] = P0

Y[9] = KOP

Y[10] = P2 KOP

Y[11] = P1 KOP

SKO = P2 KOP v P4 KOP

4) Схема местного устройства управления:

Схема

Комбинационная схема 4 - предназначена для выработки управляющих сигналов для блока операций и сигнала конца операции для центрального устройства управления. принимает состояния триггеров, код операции, текущий анализируемый разряд множителя, знак множителя и признак последнего анализируемого разряда множителя. Передаёт блоку операций и счётчику управляющие сигналы и сигнал конца операции центральному устройству управления.

entity kc4 is

Port ( p0 : in STD_LOGIC;

p1 : in STD_LOGIC;

p2 : in STD_LOGIC;

p3 : in STD_LOGIC;

p4 : in STD_LOGIC;

kop : in STD_LOGIC;

f1 : in STD_LOGIC;

f2 : in STD_LOGIC;

fc : in STD_LOGIC;

y : out STD_LOGIC_VECTOR (10 downto 1);

y11 : out STD_LOGIC;

sko : out STD_LOGIC);

end kc4;

architecture Behavioral of kc4 is

begin

y(1)<=(p0 or p2) and not kop;

y(2)<=p0 and not kop;

y(3)<=p0 or (p2 and not kop);

y(4)<=p0;

y(5)<=((p1 and f2) or p3) and not kop;

y(6)<=((p1 and f2) or (p4 and f1)) and not kop;

y(7)<=p1 or ((p3 or (p4 and f1)) and not kop);

y(8)<=p0;

y(9)<=kop;

y(10)<=(p2 and kop);

y11<=p1 and not kop;

sko<=(p2 and kop) or (p4 and not kop);

end Behavioral;

Разработка центрального устройства управления

1) Проектирование блока управления командами.

Набор операций, выполняемых процессором включает 4 команды: умножение, сдвиг в право, переход по равенству нулю и останов. Поэтому операционная часть команды - поле КОП - должна содержать не меньше 2-х разрядов.

Физически оперативная память организована как массив из 16-ти 4-разрядных ячеек(байтов), а регистровая - как массив из 4-х 4-разрядных ячеек. Логический адрес будет совпадать с физическим в обоих случаях.

Рис.

Для указания логического адреса операнда в адресном поле команды ПП потребуется 4 разряда. При аппаратном преобразовании логического адреса в физический адрес ячейки памяти старшие 3 разряда будут определять физический адрес, а младший разряд укажет положение полубайта в ячейке. Аналогично и для формата РР, потребуется 2 разряда. Для определения адресной части формата команд рассмотрим механизмы прямой адресации и относительной адресации с индексированием.

В прямой адресации код адреса операнда в команде является исполнительным адресом обращения к памяти.

Рис.

При относительной адресации с индексированием базовым адресом является счётчик команд, а в команде указывается смещение и номер регистра, который содержит дополнительное смещение (индекс). Исполнительный адрес формируется суммированием содержимого счётчика команд, смещения и индекса.

Рис.

В соответствии с техническим заданием форматы команд можно представить в следующем виде.

Рис.

Таблица. Двоичный код КОП:

Разряды поля КОП команды

Операция

Тип команд

Коп1

Коп0

0

0

Умножение

Линейные

0

1

Сдвиг вправо

1

0

Переход

Нелинейные

1

1

Останов

2) Составление алгоритма выполнения команд.

Рис.

3) Схема центрального устойства управления.

Рис.

Счётчик команд (СК) - служит для фиксации и формирования адресов команд, располагающихся в ячейках оперативной памяти.

entity CK is

Port ( A : in STD_LOGIC_VECTOR (3 downto 0);

inc, l, clr: in STD_LOGIC;

clock : in STD_LOGIC;

Q : out STD_LOGIC_VECTOR (3 downto 0));

end CK;

architecture Behavioral of CK is

Shared Variable cou: STD_LOGIC_VECTOR(3 downto 0);

begin

process (clock)

begin

if clock'event and clock = '1' then

cou := cou + inc;

if l = '1' then cou := A;

elsif clr = '1' then cou := "0000";

end if;

end if;

Q <= cou;

end process;

end Behavioral;

Регистр команд (РК) - предназначен для хранения кода команды после приёма из оперативной памяти.

entity PK is

Port ( a : in STD_LOGIC_VECTOR (3 downto 0);

en: in STD_LOGIC;

clock : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (11 downto 0));

end PK;

architecture Behavioral of PK is

Shared Variable state: STD_LOGIC_VECTOR(11 downto 0);

Shared Variable count: STD_LOGIC_VECTOR(1 downto 0);

Shared Variable kop: STD_LOGIC_VECTOR(1 downto 0);

begin

process (clock)

begin

if clock'event and clock = '1' and en = '1' then

if count = "00" then

state := "000000000000";

kop := a(3 downto 2);

if kop = "11" then count := "01";

elsif kop = "10" or kop = "01" then count := "10";

else count := "11";

end if;

end if;

state := a & state(11 downto 4);

count := count - 1;

if count = "00" then

if kop = "01" or kop = "10" then state := state(7 downto 4) & state(11 downto 8) & "0000";

elsif kop = "00" then state := state(3 downto 0) & state(7 downto 4) & state(11 downto 8);

end if;

end if;

end if;

end process;

d <= state;

end Behavioral;

Буферные регистры (Reg) - предназначены для промежуточного хранения операндов при пересылках между центральным устройством управления и Арифметико-логическим устройством.

entity Reg is

Port ( a : in STD_LOGIC_VECTOR (3 downto 0);

l, clk : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (3 downto 0));

end Reg;

architecture Behavioral of Reg is

signal state: STD_LOGIC_VECTOR (3 downto 0);

begin

process (clk)

begin

if clk'event and clk = '1' and l = '1' then state <= a;

end if;

d <= state;

end process;

end Behavioral;

Регистр признака результата (RPR) - служит для хранения признака результата, значение которого принимается из арифметико-логического устройства. Значение признака результата анализируется при выполнении команды перехода по равенству нулю.

entity RPR is

Port ( Ipr, l, clk : in STD_LOGIC;

Opr : out STD_LOGIC);

end RPR;

architecture Behavioral of RPR is

begin

process (clk)

Variable state: STD_LOGIC;

begin

if clk'event and clk = '1' then

if l = '1' then state := Ipr;

end if;

end if;

Opr <= state;

end process;

end Behavioral;

Оперативная память (OP) - служит для хранения команд и операндов.

Регистровая память (RP) - служит для хранения операндов и индексов.

Регистр исполнительного адреса (RIA) - предназначен для хранения исполнительных адресов с случаях, когда используются не прямые способы адресации.

entity RIA is

Port ( a : in STD_LOGIC_VECTOR (3 downto 0);

l : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (3 downto 0);

clock : in STD_LOGIC);

end RIA;

architecture Behavioral of RIA is

signal state: STD_LOGIC_VECTOR (3 downto 0);

begin

process (clock)

begin

if clock'event and clock = '1' then

if l = '1' then state <= a;

end if;

end if;

end process;

d <= state;

end Behavioral;

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

entity BMK is

Port ( clk, Start, SKO, PR, InpO, InpR : in STD_LOGIC;

kop : in STD_LOGIC_VECTOR(1 downto 0);

SNO : out STD_LOGIC;

YC : out STD_LOGIC_VECTOR (0 to 13));

end BMK;

architecture Behavioral of BMK is

begin

process(clk)

Variable cou : STD_LOGIC_VECTOR(5 downto 0);

Variable bufY : STD_LOGIC_VECTOR(0 to 13);

Variable Ena, Ncom : STD_LOGIC;

Variable Sav : STD_LOGIC_VECTOR(1 downto 0);

Begin

if clk'event and clk = '1' then

bufY := "00000000000000"; SNO <= '0';

if Start = '1' or Ncom = '1' then

cou := "000000";

Ena := '1';

bufY(0) := '1';

bufY(2) := '1';

Ncom := '0';

elsif Ena = '1' then

if cou = 1 then

if kop = "11" then Ena := '0';

else bufY(0) := '1';

end if;

elsif cou = 2 then bufY(2) := '1';

elsif cou = 3 then

if kop = "10" or kop = "01" then

bufY(3) := '1';

if kop = "01" then bufY(9) := '1';

end if;

end if;

elsif cou = 4 then

if kop = "00" then bufY(2) := '1';

elsif kop = "01" then bufY(9) := '1';

end if;

elsif cou = 5 then

if kop = "00" then bufY(3) := '1';

elsif kop = "10" and Pr = '0' then bufY(1) := '1';

end if;

elsif cou = 6 then

if kop = "00" then

bufY(8) := '1';

bufY(9) := '1';

elsif kop = "01" then

bufY(11) := '1';

bufY(13) := '1';

Ena := '0';

SNO <= '1';

end if;

elsif cou = 7 and kop = "10" then

Ena := '0';

Ncom := '1';

elsif cou = 8 then bufY(4) := '1';

elsif cou = 9 then bufY(5) := '1';

elsif cou = 10 then bufY(12) := '1';

elsif cou = 11 then

bufY(0) := '1';

bufY(13) := '1';

Ena := '0';

SNO <= '1';

end if;

cou := cou + 1;

end if;

if SKO = '1' then

if kop = "00" then

bufY(4) := '1';

bufY(6) := '1';

bufY(7) := '1';

Sav := "01";

elsif kop = "01" then

bufY(8) := '1';

bufY(10):= '1';

Ncom := '1';

end if;

elsif Sav = "01" then

bufY(4) := '1';

bufY(5) := '1';

bufY(6) := '1';

bufY(7) := '1';

Sav := "10";

elsif Sav = "10" then Sav := "11";

elsif Sav = "11" then

Ncom := '1';

Sav := "00";

end if;

if InpO = '1' then

bufY(6) := '1';

bufY(7) := '1';

end if;

if InpR = '1' then bufY(10) := '1';

end if;

YC <= bufY;

end if;

End process;

end Behavioral;

Таблица. Управляющие сигналы БМК:

Сигнал

Назначение

YC0

Увеличение состояния СК на 1

YC1

Загрузка адреса перехода в СК

YC2

Разрешение записи команды в РК

YC3

Разрешение передачи в РИА адреса из РК

YC4

Выбор источника адреса ОП и источника данных для записи в ОП.

YC5

YC6

YC7

Разрешение записи данных в ОП

YC8

Выбор источника адреса РП и источника данных для записи в РП.

YC9

YC10

Разрешение записи в РП.

YC11

Выбор типа памяти(ОП или РП)

YC12

Разрешение записи операнда в регистр Р1

YC13

Разрешение записи операнда в регистр Р2

Комбинационная схема 5 (КС5) - предназначена для выбора источника операнда для записи в буферный регистр.

entity KC5 is

Port ( a, b : in STD_LOGIC_VECTOR (3 downto 0);

y : in STD_LOGIC;

d : out STD_LOGIC_VECTOR (3 downto 0));

end KC5;

architecture Behavioral of KC5 is

begin

d <= a when y = '0'

else b;

end Behavioral;

Комбинационная схема 6 (КС6) - предназначена для считывание и записи данных в оперативную память.

entity KC6 is

Port ( com, inadr : in STD_LOGIC_VECTOR (3 downto 0);

Rez : in STD_LOGIC_VECTOR (7 downto 0);

CK, reg : in STD_LOGIC_VECTOR (3 downto 0);

AdrC : in STD_LOGIC_VECTOR (7 downto 0);

y1, y2, inp : in STD_LOGIC;

Date, Oadr : out STD_LOGIC_VECTOR (3 downto 0));

end KC6;

architecture Behavioral of KC6 is

begin

process(y1, y2, inp)

Variable bufD, bufA : STD_LOGIC_VECTOR(3 downto 0);

begin

if inp = '0' then

if y1 = '0' and y2 = '0' then Oadr <= CK;

elsif y1 = '1' and y2 = '0' then Oadr <= CK+reg+AdrC(7 downto 4);

elsif y1 = '0' and y2 = '1' then Oadr <= AdrC(3 downto 0);

end if;

else

if y1 = '0' and y2 = '0' then

Date <= com;

Oadr <= Inadr;

elsif y1 = '1' and y2 = '0' then

Date <= Rez(7 downto 4);

Oadr <= CK-2;

elsif y1 = '1' and y2 = '1' then

Date <= Rez(3 downto 0);

Oadr <= CK-1;

end if;

end if;

end process;

end Behavioral;

Комбинационная схема 7 (КС7) - предназначена для считывания и записи данных в регистровую память.

entity KC7 is

Port ( Ria : in STD_LOGIC_VECTOR (3 downto 0);

Adr : in STD_LOGIC_VECTOR (1 downto 0);

Inad: in STD_LOGIC_VECTOR (1 downto 0);

Oper: in STD_LOGIC_VECTOR (3 downto 0);

Rez : in STD_LOGIC_VECTOR (3 downto 0);

y1, y2 : in STD_LOGIC;

Date: out STD_LOGIC_VECTOR (3 downto 0);

Oadr: out STD_LOGIC_VECTOR (1 downto 0));

end KC7;

architecture Behavioral of KC7 is

begin

process(y1, y2)

Begin

if y1 = '0' and y2 = '0' then

Date <= Oper;

Oadr <= Adr;

elsif y1 = '0' and y2 = '1' then

Oadr <= Ria(1 downto 0);

elsif y1 = '1' and y2 = '0' then

Date <= Rez;

Oadr <= Ria(3 downto 2);

else Oadr <= Inad;

end if;

end Behavioral;

Тестирование процессора ЭВМ.

1) Схема процессора ЭВМ.

Рис.

2) Временные диаграммы работы:

Рис.

Рис.

Список используемой литературы

1. Ефремов Н.В. Курс лекций по дисциплине «Организация ЭВМ и систем». МГУЛ. Москва. 2009-2010.

2. Ковригин Б.Н. Проектирование процессора ЭВМ. Учебное пособие. 2-е издание. МИФИ. Москва. 2006.

Размещено на Allbest.ru


Подобные документы

  • Разработка устройства, реализующего набор команд из числа операций с плавающей точкой семейства процессора i486. Структура сопроцессора FPU. Принцип выполнения операций, разработка блок-схемы, построение структурной схемы основных блоков процессора.

    курсовая работа [734,9 K], добавлен 27.10.2010

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

    курсовая работа [2,8 M], добавлен 15.05.2014

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

    курсовая работа [577,8 K], добавлен 24.06.2013

  • История развития центрального процессора. Основные проблемы создания многоядерных процессоров. Проектирование микропроцессорной системы на базе процессора Intel 8080. Разработка принципиальной схемы и блок-схемы алгоритма работы микропроцессорной системы.

    курсовая работа [467,6 K], добавлен 11.05.2014

  • Разработка структурной схемы процессора; синтез микропрограммного и управляющего автомата с жесткой логикой. Функциональная организация процессора: программные модели, форматы данных и команд. Организация оперативной памяти. Проектирование блока операций.

    учебное пособие [1,1 M], добавлен 09.04.2013

  • Внутренние и внешние устройства персонального компьютера. Классификация и характеристики ЭВМ, основы учения и структуры первых поколений. Основные принципы построения ПК. Функции центрального процессора и операционные устройства управления компьютера.

    курсовая работа [109,7 K], добавлен 04.11.2010

  • Состав центрального процессора: устройства управления, арифметико-логическое, запоминающее. Тактовая частота и разрядность процессоров, его адресное пространство и рабочая температура. Тепловыделение процессоров и отвод тепла; количество ядер.

    презентация [1,0 M], добавлен 03.02.2015

  • Анализ выбора цифрового сигнального процессора и структурной схемы устройства обработки информации. Расчет надежности устройства и производительности обмена данных, разработка ленточного графика. Обзор особенностей радиального и межмодульного интерфейса.

    дипломная работа [1,8 M], добавлен 20.05.2012

  • Описание устройства и принципа работы составных элементов компьютера: системного блока, платы, центрального процессора, кеш-памяти, материнской платы BIOS и CMOS, запоминающего устройства RAM, компьютерной шины, логических контроллеров, аппаратных портов.

    реферат [61,0 K], добавлен 10.01.2012

  • Наименование разрабатываемого устройства. Назначение разрабатываемого устройства в городском транспорте. Обзорный анализ найденных аналогов. Обоснование актуальности разработки устройства. Разработка функциональной схемы разрабатываемого устройства.

    курсовая работа [175,6 K], добавлен 04.07.2008

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.