Курсовая работа: Разработка структуры процессора на основе МПА с жесткой логикой

end component;

signal AccIn,ALURL,RegIn,PCIn,PCInc,MBROut,IRIn,MEMRd,Reset:std_logic;

signal Inst_Addr:std_logic_vector(7 downto 0);

signal mem_mbr,BUS1,pc_mar,mar_mem,acc_alu:std_logic_vector(7 downto 0);

begin

DD0: CU port map(Instr=> Inst_Addr(7 downto 6),AccIn=> AccIn,ALURL=> ALURL,

RegIn=> RegIn,PCIn=> PCIn,PCInc=> PCInc,MBROut=> MBROut,IRIn=> IRIn,

MEMRd=> MEMRd,Reset =>Reset,RST => RST, Clk => Clk);

DD1: ALU port map(In1=> acc_alu,OP=> ALURL,Res=> BUS1,RST=> RST,Clk => Clk);

DD2: Memory generic map(file_name)port map(addr => mar_mem,data => mem_mbr,rd=> MEMRd,ld=> RST);

DD3: BlockRG port map(D => BUS1,Addr=> Inst_Addr(5 downto 4),EI => RegIn,RST=> RST,Clk=> Clk);

IR: REGI port map(D => BUS1,Q=> Inst_Addr,EI=> IRIn,RST => RST, Clk => Clk);

DD4: MBR port map(D=> mem_mbr,Q=> BUS1,EO=> MBROut,RST => RST, Clk => Clk);

DD5: MAR port map(D => pc_mar,Q => mar_mem,RST => RST, Clk => Clk);

DD6: PC port map(D=> BUS1,Q => pc_mar,EI=> PCIn,Inc => PCInc,RST=> RST,Clk=> Clk);

ACC: REGI port map(D=> BUS1,Q=> acc_alu,EI=> AccIn,RST=> RST,Clk=> Clk);

end CPU;

Программа для проверки работоспособности процессора написана в отдельном файле Mem.dat, хранящемся на диске, и подгружается в память прямо в процессе работы средствами языка VHDL. Приведем пример тестовой программы и покажем результаты ее работы.

01.00.0000 11111111 ;mov a,#

10.00.0000 00000001 ;mov ro,#

10.01.0000 00000010 ;mov rl,#

10.10.0000 00000100 ;mov r2,#

10.11.0000 00001000 ;mov r3,#

01.00.0000 00000001 ;mov a,#

11.00.0000 00000000 ;rl a

00.00.0000 00001100 ;jmp #

Обработчик файла построен таким образом, что игнорируются все символы, не входящие в тип std_logic. Первый столбец, первые 2 бита – код команды, вторые 2 бита - номер РОН), второй столбец – операнды. В случае с командой сдвига содержимое поля операнда не имеет значения.

Загружается число в аккумулятор, затем в каждый из РОН, после чего производится очередная запись в аккумулятор и сдвиг его содержимого, искусственно зацикленный командой JMP.

Временная диаграмма работы процессора при заданной программе приведена на рис. 3, где data – данные из памяти. На рис. 4. можно увидеть задержки и определить временные характеристики работы процессора.


К-во Просмотров: 659
Бесплатно скачать Курсовая работа: Разработка структуры процессора на основе МПА с жесткой логикой