Architektura systemów komputerowych. Moduł kontrolera

Podobne dokumenty
Architektura systemów komputerowych. Przetwarzanie potokowe I

Podstawy Informatyki Układ sterujący

UKŁADY MIKROPROGRAMOWALNE

Budowa i zasada działania komputera. dr Artur Bartoszewski

Organizacja typowego mikroprocesora

Struktura i działanie jednostki centralnej

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Architektura systemów komputerowych

Projektowanie. Projektowanie mikroprocesorów

architektura komputerów w. 4 Realizacja sterowania

Architektura systemów komputerowych. dr Artur Bartoszewski

Logiczny model komputera i działanie procesora. Część 1.

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

ARCHITEKTURA PROCESORA,

Metody optymalizacji soft-procesorów NIOS

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

Elementy cyfrowe i układy logiczne

Architektura komputerów

Budowa komputera Komputer computer computare

Architektura komputerów Wykład 2

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Architektura Systemów Komputerowych

Architektura systemów komputerowych. Lista instrukcji procesora

LEKCJA TEMAT: Współczesne procesory.

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

Architektura komputerów

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Architektura typu Single-Cycle

Układy logiczne układy cyfrowe

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Temat: Pamięci. Programowalne struktury logiczne.

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

LEKCJA TEMAT: Zasada działania komputera.

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Architektura komputerów

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

Architektura potokowa RISC

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.01 Rok akad. 2011/ / 27

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Mikroprocesor Operacje wejścia / wyjścia

Podstawy Informatyki Systemy sterowane przepływem argumentów

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji

Układy mikroprogramowane

Architektura mikroprocesorów z rdzeniem ColdFire

Architektura komputerów

Plan wykładu. Architektura systemów komputerowych. Cezary Bolek

Specyfika projektowania Mariusz Rawski

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

Budowa Mikrokomputera

Architektura komputerów

WPROWADZENIE Mikrosterownik mikrokontrolery

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

Systemy na Chipie. Robert Czerwiński

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Programowalne układy logiczne

Przykładowe pytania DSP 1

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Układy logiczne układy cyfrowe

Architektura komputerów. Komputer Procesor Mikroprocesor koncepcja Johna von Neumanna

Przetwarzanie potokowe pipelining

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Podstawy Informatyki Układ przerwań

Technika mikroprocesorowa I Wykład 2

Układy kombinacyjne. cz.2

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

MIKROKONTROLERY I MIKROPROCESORY

dr inż. Jarosław Forenc

drklaus 1 Model funkcjonalny komputera struktura, funkcje, komputer dr inż. Rafał KLAUS STRUKTURA I DZIAŁANIE KOMPUTERA

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

Tranzystor JFET i MOSFET zas. działania

Architektura mikroprocesorów TEO 2009/2010

Współczesne techniki informacyjne

dr inż. Jarosław Forenc

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

KARTA MODUŁU KSZTAŁCENIA

Programowanie Niskopoziomowe

Podstawy elektroniki cyfrowej dla Inżynierii Nanostruktur. Piotr Fita

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Szkolenia specjalistyczne

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Opracował: Jan Front

Architektura komputerów

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Programowanie sterowników PLC wprowadzenie

Architektura komputerów

Podstawy Techniki Mikroprocesorowej

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) niestacjonarne (stacjonarne / niestacjonarne)

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Transkrypt:

Architektura systemów komputerowych

Plan wykładu. Implementacja kontrolera. 2. Projekt P kontroler. 3. Projekt P synteza kontrolera. Cele Znajomość architektury oraz technik projektowania mikroprocesorów. Poznanie zasad projektowania kontrolera.

Implementacja kontrolera

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Układ kontrolera steruje przepływem sterowania wewnątrz procesora, koordynując pracę poszczególnych modułów CPU. Pojęcia: funkcje kontrolera sygnały sterujące synteza kontrolera

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Układ kontrolera steruje przepływem sterowania wewnątrz procesora, koordynując pracę poszczególnych modułów CPU. Pojęcia: funkcje kontrolera sygnały sterujące synteza kontrolera W ogólności kontroler implementuje model rozkazów CPU, realizując zadania: szeregowania zadań dla modułów CPU, synchronizacji operacji: pobrania rozkazu, dekodowania i wykonania rozkazu, zapisania wyników wykonania operacji. Pewne typu procesorów posiadają kontroler rozproszony, realizujący złożone funkcje np. wykonanie rozkazów poza kolejnością, przetwarzanie potokowe.

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Układ kontrolera steruje przepływem sterowania wewnątrz procesora, koordynując pracę poszczególnych modułów CPU. Pojęcia: funkcje kontrolera sygnały sterujące synteza kontrolera W ogólności kontroler implementuje model rozkazów CPU, realizując zadania: szeregowania zadań dla modułów CPU, synchronizacji operacji: pobrania rozkazu, dekodowania i wykonania rozkazu, zapisania wyników wykonania operacji. Pewne typu procesorów posiadają kontroler rozproszony, realizujący złożone funkcje np. wykonanie rozkazów poza kolejnością, przetwarzanie potokowe. Układ kontrolera generuje sygnały sterujące dla modułów CPU. W ogólności są to: sygnały sterujące rejestrami: włączanie, wyłączanie, zatrzaskiwanie danych, sygnały sterujące magistralami: blokowanie dostępu do magistrali, przekierowania, sygnały faz rozkazu, sygnały sterujące pamięcią. Sygnały sterujące można łączyć z sygnałami faz w równania rozkazów (funkcje logiczne).

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Układ kontrolera steruje przepływem sterowania wewnątrz procesora, koordynując pracę poszczególnych modułów CPU. Pojęcia: funkcje kontrolera sygnały sterujące synteza kontrolera Układu kontrolera może zrealizować stosując: logikę układową (ang. hard-wired, hardware): - stosuje się dowolne elementy logiczne, układu PLA, FPGA, pamięć ROM/RAM itp. - uzyskuje się szybkie urządzenie, ale dedykowane. programowanie sprzętowe (ang. firmware): - stosując mikroprogramowanie, - kontroler przypomina komputer posiada mikroinstrukcje oraz mikroprogram, - moduł ma elastyczną konstrukcję: możliwe są zmiany w sposobie wykonania rozkazów lub kompletna zmiana całego zbioru instrukcji, cena - układ ma mniejszą szybkość działania niż w logice układowej, głównie wynikającą z szybkości działania pamięci mikrokomputera. złożoność układu W ogólności kontroler implementuje model rozkazów CPU, realizując zadania: szeregowania zadań dla modułów CPU, synchronizacji operacji: pobrania rozkazu, dekodowania i wykonania rozkazu, zapisania wyników wykonania operacji. Pewne typu procesorów posiadają kontroler rozproszony, realizujący złożone funkcje np. wykonanie rozkazów poza kolejnością, przetwarzanie potokowe. Układ kontrolera generuje sygnały sterujące dla modułów CPU. W ogólności są to: sygnały sterujące rejestrami: włączanie, wyłączanie, zatrzaskiwanie danych, sygnały sterujące magistralami: blokowanie dostępu do magistrali, przekierowania, sygnały faz rozkazu, sygnały sterujące pamięcią. Sygnały sterujące można łączyć z sygnałami faz w równania rozkazów (funkcje logiczne).

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Ścieżka danych. wy A LA we B m LB C m2 S m3 LC m A, B, C rejestry typu latch.

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora LA we B m LB S m3 LC m A, B, C rejestry typu latch. ścieżka danych we A C kod rozkazu wy S B m m m2 m3 Układ może realizować operacje: ładowanie liczby do rejestru (ld_reg), iloczyn logiczny rejestrów prosty (and_reg) i zanegowany (nand_reg), sumę logiczną rejestrów prostą (or_reg) i zanegowaną (nor_reg), sumę arytmetyczną rejestrów (sum_reg), ładowanie rejestru A zawartością B (ld_ab). Kontroler musi generować sygnały: m wybór źródła danych dla rejestrów, m wybór trybu pracy sumatora, m 2 wybór funkcji logicznej, m 3 wybór źródła wyniku, L X sygnał zapisu danej do rejestru, gdzie X = A, B lub C. C m2 kontroler LC mikroprogramowanie wy A LB logika układowa Ścieżka danych. LA wstęp

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa mikroprogramowanie Ścieżka danych. wy A LA we B m LB S m3 LC m Układ może realizować operacje: ładowanie liczby do rejestru (ld_reg), iloczyn logiczny rejestrów prosty (and_reg) i zanegowany (nand_reg), sumę logiczną rejestrów prostą (or_reg) i zanegowaną (nor_reg), sumę arytmetyczną rejestrów (sum_reg), ładowanie rejestru A zawartością B (ld_ab). Kontroler musi generować sygnały: m wybór źródła danych dla rejestrów, m wybór trybu pracy sumatora, m 2 wybór funkcji logicznej, m 3 wybór źródła wyniku, L X sygnał zapisu danej do rejestru, gdzie X = A, B lub C. C m2 A, B, C rejestry typu latch. Ładowanie danej do rejestru z wejścia: kod rozkazu m m m2 m3 LA LB A=we - B=we - LC A=we (kod rozkazu), B=we Iloczyn dwóch rejestrów: kod rozkazu m m m2 m3 LA A=A and B B=A and B A=A and B, B=A and B LB LC

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa Ścieżka danych. mikroprogramowanie wy A LA we B LB m C m2 S m3 LC m A, B, C rejestry typu latch. Tabela logiczna kontrolera: kod rozkazu m m m2 m3 LA nop A=we B=we A=A and B B=A and B A=A nand B B=A nand B A=A or B B=A or B A=A nor B B=A nor B A=A+B B=A+B A=B LB LC m = c + c + c3 c3 c c m m = c2c3 + c + cc3 c2 c3 c c c3 m

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa Ścieżka danych. mikroprogramowanie wy A LA we B LB m C m2 S m3 LC m A, B, C rejestry typu latch. Tabela logiczna kontrolera: kod rozkazu m m m2 m3 LA nop A=we B=we A=A and B B=A and B A=A nand B B=A nand B A=A or B B=A or B A=A nor B B=A nor B A=A+B B=A+B A=B LB LC m2 = cc + c2c3 m3 = cc + cc2c3 m3 = c2c3 + cc2c3 LA = cc2c3 + cc2c3 + ccc3 + ccc2c3 + ccc2c3 + ccc2c3 + ccc2c3 LB = cc2c3 + ccc3 + ccc2c3 + ccc2c3 + ccc2c3 + ccc2c3 LC = c + c + c 2 c 3

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp Ścieżka danych. logika układowa LA we mikroprogramowanie wy A B m LB C m2 S m3 LC m A, B, C rejestry typu D. Założenia budowy kontrolera mikroprogramowanego jak i jego prototyp opracował prof. Maurice V. Wilkes, twórca komputera EDSAC pierwszego komputera wewnętrznym programem, laureat nagrody Turinga z 967r, współautor książki The Preparation of Programs for an Electronic Digital Computer z 95, w której zawarto koncepcję bibliotek programistycznych. Maurice V. Wilkes (93-2)

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp Ścieżka danych. logika układowa LA we mikroprogramowanie wy A B m LB S Format mikrooperacji jest związany z sygnałami jakie ma generować kontroler. W tym przypadku może to być: m m m2 m3 LA LB LC adr_ctrl m3 LC m Założenia dla kontrolera: sygnały -bitowe: m, m, m, 2 sygnał 2-bitowy: m, 3 sygnał ładowania rejestru L, L, L, A B C rozpoznawanie 3-tu rozkazów, wykonanie najdłuższego rozkazu zajmuje dwa cykle zegara. C m2 A, B, C rejestry typu D. Ładowanie danej do rejestru z wejścia: A/B=we: t: m =, LA/B= / Iloczyn dwóch rejestrów: A/B=A and B: t: m2 =, m3 =, LC= / t: m =, LA/B= / Suma dwóch rejestrów: A/B=A+B: t: m =, m3 =, LC= / t: m =, LA/B= /

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp Ścieżka danych. logika układowa wy A LA we B mikroprogramowanie LB m S Tabela logiczna kontrolera: kod rozkazu m m m2 m3 LA LB LC f r - - - B=A and B... A=A+B... A=B m3 LC m nop A=we B=we A=A and B C m2 A, B, C rejestry typu D. Algorytm działania kontrolera:. oczekiwanie na wyzwolenie narastającym zboczem zegara, 2. jeśli odczytany bit r= to opadające zbocze zegara spowoduje wpisanie do rejestry stanu bitu f i wybranie funkcji nop, 3. jeśli odczytany bit r= to do rejestru stanu wpisanie wartości bitu f. W ogólności układ sekwencyjny kontrolera może pracować w większej liczbie stanów niż 2.

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa Ścieżka danych. wy A LA we B mikroprogramowanie m LB C m2 S LC m3 m A, B, C rejestry typu D. Schemat blokowy kontrolera: adr [n..] US RAM/ROM SEQ kod rozkazu m adr [] (długość słowa danych b) m m2 m3 LA LB LC

Implementacja kontrolera metody projektowania i implementacji kontrolera procesora wstęp logika układowa Ścieżka danych. wy A LA we B mikroprogramowanie m LB C m2 S LC m3 m A, B, C rejestry typu D. Schemat blokowy kontrolera: kod rozkazu m adr [n..] US układ sekwencyjny asynchroniczny SEQ RAM/ROM adr [] (długość słowa danych b) m m2 m3 LA LB LC

Projekt P kontroler

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 PC + moduł kontrolera SEXT 2 SHL 4 sygnały, 2, 3 2 Ścieżka danych CPU. + moduły ścieżki D Smem 3 8 IR 2 4,5 2,3 6,7 SEG 2 6 2,3 4,5, 2,3 Sadr S 6 H Dwe Z/O L ALU RFILE 2 NAT Amem MBR RAM MAR IR SEXT 2 8 Aadr Badr Dwe Z/O A B 8 8 A W B STAN RSTAN 8 R

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 PC + moduł kontrolera SEXT 2 SHL 4 sygnały, 2, 3 2 Moduły ścieżki danych CPU. + moduły ścieżki D Smem 3 8 IR 2 4,5 2,3 6,7 SEG 2 6 2,3 4,5, 2,3 Sadr S 6 H Dwe Z/O L ALU RFILE 2 NAT Amem MBR RAM MAR IR SEXT 2 8 Aadr Badr Dwe Z/O A B 8 8 A W B STAN RSTAN 8 R

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 PC_src IR_size ADR_mod SEXT + ADRMAN IR_set SL_sel SL_lh IR SEG kontroler SL_fun IR MBR 8 ALU_fun A_sel IR_set NAT MAR MAR_set RAM 2 SEXT moduł kontrolera 2 2 PC SHL 4 sygnały, 2, 3 + moduły ścieżki ALU RFILE B_sel R_set NAT_set ALU_src RSTAN REG_fun RSTAN_set MEM_fun MBR_set WB_src R REG_src

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 PC_src IR_size ADR_mod SEXT + ADRMAN IR_set SL_sel SL_lh IR SEG kontroler SL_fun IR MBR 8 ALU_fun A_sel IR_set NAT MAR MAR_set RAM 2 SEXT moduł kontrolera 2 2 PC SHL 4 sygnały, 2, 3 + moduły ścieżki ALU RFILE B_sel R_set NAT_set ALU_src RSTAN REG_fun RSTAN_set MEM_fun MBR_set WB_src R REG_src

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 moduły ścieżki sygnały moduł kontrolera W projektowanym CPU moduł kontrolera będzie mikroprogramowanym układem cyfrowym synchroniczno-asynchronicznym. Pojęcia: cykl rozkazowy podmoduły kontrolera źródła sygnałów

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 moduły ścieżki sygnały moduł kontrolera W projektowanym CPU moduł kontrolera będzie mikroprogramowanym układem cyfrowym synchroniczno-asynchronicznym. Pojęcia: cykl rozkazowy podmoduły kontrolera źródła sygnałów Cykl rozkazowy CPU będzie składał się z: pobrania rozkazu, dekodowania instrukcji, pobrania argumentów, wykonania rozkazu, zapisania wyników, przerwania. W projekcie przewidziano możliwość obsługi jednego przerwania. Adres procedury obsługi tego przerwania będzie znajdował się w 4tej komórce RAM gdzie powinna znajdować się instrukcja dalekiego skoku.

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 moduły ścieżki sygnały moduł kontrolera W projektowanym CPU moduł kontrolera będzie mikroprogramowanym układem cyfrowym synchroniczno-asynchronicznym. Pojęcia: cykl rozkazowy podmoduły kontrolera źródła sygnałów Cykl rozkazowy CPU będzie składał się z: pobrania rozkazu, dekodowania instrukcji, pobrania argumentów, wykonania rozkazu, zapisania wyników, przerwania. W projekcie przewidziano możliwość obsługi jednego przerwania. Adres procedury obsługi tego przerwania będzie znajdował się w 4tej komórce RAM gdzie powinna znajdować się instrukcja dalekiego skoku. Zadania w obrębie etapów cyklu rozkazowego będzie zakodowana przy pomocy mikrorozkazów. Kontroler będzie zbudowany z modułów, w szczególności będzie zawierał: pamięć mikroinstrukcji, układ sekwensera (układ asynchroniczny), logikę towarzyszącą. Synteza modułów kontrolera wymaga opracowania diagramu pracy.

Projekt P kontroler kontroler CPU dla założeń z wykładu nr 4 moduły ścieżki W projektowanym CPU moduł kontrolera będzie mikroprogramowanym układem cyfrowym synchroniczno-asynchronicznym. sygnały moduł kontrolera Pojęcia: cykl rozkazowy podmoduły kontrolera źródła sygnałów IR 2,3 6,7 IR Ścieżkę danych kontrolują dwa rodzaje sygnałów: sygnały pochodzące z kodu instrukcji: 4,5 SEL 2,3 4,5, 2,3 2 RFILE 2 2 Sadr Aadr Badr sygnały generowane przez kontroler: - wymuszające zapis danych do rejestrów (np. IR_set), - sterujące przepływem danych (np. A_sel), - wyboru funkcji bloków funkcjonalnych (np. ALU_fun), - sterujące zapisem/odczytem RAM tylko, gdy CPU nie posiada dedykowanego kontrolera pamięci. Cykl rozkazowy CPU będzie składał się z: pobrania rozkazu, dekodowania instrukcji, pobrania argumentów, wykonania rozkazu, zapisania wyników, przerwania. W projekcie przewidziano możliwość obsługi jednego przerwania. Adres procedury obsługi tego przerwania będzie znajdował się w 4tej komórce RAM gdzie powinna znajdować się instrukcja dalekiego skoku. Zadania w obrębie etapów cyklu rozkazowego będzie zakodowana przy pomocy mikrorozkazów. Kontroler będzie zbudowany z modułów, w szczególności będzie zawierał: pamięć mikroinstrukcji, układ sekwensera (układ asynchroniczny), logikę towarzyszącą. Synteza modułów kontrolera wymaga opracowania diagramu pracy.

Projekt P synteza kontrolera

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Kontroler projektowanego CPU musi spełniać pewne założenia konstrukcyjne, wynikające w dużej mierze z architektury procesora. Pojęcia: stany pracy diagram pracy mikroinstrukcja

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Kontroler projektowanego CPU musi spełniać pewne założenia konstrukcyjne, wynikające w dużej mierze z architektury procesora. Pojęcia: stany pracy diagram pracy mikroinstrukcja CPU będzie posiadał następujące stabilne stany pracy: RST ustawianie CPU w stan początkowy, IF pobranie rozkazu ID zdekodowanie rozkazu, OF pobranie operandów, EX wykonanie rozkazu AC obliczenie adresu w pamięci, MEM wykonanie operacji na pamięci, WB zapisanie wyników. W każdym ze stanów znajdują się podstany, przeznaczone dla automatu asynchronicznego, zdefiniowane w mikroinstrukcjach.

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Kontroler projektowanego CPU musi spełniać pewne założenia konstrukcyjne, wynikające w dużej mierze z architektury procesora. Pojęcia: stany pracy diagram pracy mikroinstrukcja CPU będzie posiadał następujące stabilne stany pracy: RST, IF, ID, OF, EX, AC, MEM, oraz WB. IF INT ID MEM WB OF RST AC MEM EX AC

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Kontroler projektowanego CPU musi spełniać pewne założenia konstrukcyjne, wynikające w dużej mierze z architektury procesora. Pojęcia: stany pracy diagram pracy mikroinstrukcja CPU będzie posiadał następujące stabilne stany pracy: RST, IF, ID, OF, EX, AC, MEM, oraz WB. MEM_fun MBR_set MAR_set WB_src PC_src IR_size ADR_mod IR_set IR_set NAT_set SL_sel SL_fun SL_lh A_sel B_sel REG_src REG_fun ALU_src ALU_fun R_set RSTAN_set Format mikroinstrukcji będzie następujący: Sygnał: MEM_fun bit ( odczyt, / zapis), IR_size 2 bity liczba bajtów rozkazu, ADR_mod 2 bity rodzaj trybu adresowania, SL_sel 2 bity źródło selektora segmentu, REG_src 2 bity źródło zapisu dla rejestrów, ALU_fun 4 bity funkcja ALU. Długość słowa operacyjnego pamięci mikroinstrukcji wynosi 3 bitów. Ponadto należy uwzględnić pola dodatkowe. IF INT ID MEM WB OF RST AC MEM EX AC

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Procesory są układami złożonymi konstrukcyjnie, z tego powodu w syntezie takich układów trudno jest zastosować metody klasyczne. Pojęcia: technologie metody

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Procesory są układami złożonymi konstrukcyjnie, z tego powodu w syntezie takich układów trudno jest zastosować metody klasyczne. Pojęcia: technologie metody W konstrukcjach prototypowych (poza przemysłowych) w syntezie modułów CPU, w tym kontrolera stosuje się układy programowalne PLD: PAL, PLE, PLA, GAL, FPGA (Field Programmable Gate Array). Układy FPGA mogą posiadać w swojej strukturze programowalną pamięć RAM(ROM), którą można wykorzystać jako pamięć mikroinstrukcji. Proces projektowy odbywa się przy pomocy dedykowanych płyt prototypowych, zawierających, poza układem FPGA, urządzenia towarzyszące.

Projekt P synteza kontrolera synteza fragmentu kontrolera CPU dla założeń z wykładu nr 4 założenia synteza Procesory są układami złożonymi konstrukcyjnie, z tego powodu w syntezie takich układów trudno jest zastosować metody klasyczne. Pojęcia: technologie metody Moduły CPU, po podziale na mniejsze części, można syntezować metodami klasycznymi takie podejście utrudnia jednak procesy optymalizacji zmniejszając jakość układu. W konstrukcjach prototypowych (poza przemysłowych) w syntezie modułów CPU, w tym kontrolera stosuje się układy programowalne PLD: PAL, PLE, PLA, GAL, FPGA (Field Programmable Gate Array). Zazwyczaj na etapie prototypowania stosuje się języki opisu sprzętu HDL. Na przykład w języku VHDL każdy moduł zawierający blok process po syntezie będzie układem sekwencyjnym, czyli taki opis pozwoli na uzyskanie funkcjonalności modułu kontrolera. Należy pamiętać, że praca z językami HDL wymaga uwzględnienia następujących zasad: projektuje się rzeczywiste urządzenie, którego opis ma charakter sekwencyjny, wynik syntezy generuje pewną liczbę równolegle działających bloków, które nie zawsze są wprost definiowane w języku HDL. Układy FPGA mogą posiadać w swojej strukturze programowalną pamięć RAM(ROM), którą można wykorzystać jako pamięć mikroinstrukcji. Proces projektowy odbywa się przy pomocy dedykowanych płyt prototypowych, zawierających, poza układem FPGA, urządzenia towarzyszące.

Koniec wykładu