PL147635B1 - Method of controlling a single-structure microcomputer and system therefor - Google Patents

Method of controlling a single-structure microcomputer and system therefor Download PDF

Info

Publication number
PL147635B1
PL147635B1 PL25516985A PL25516985A PL147635B1 PL 147635 B1 PL147635 B1 PL 147635B1 PL 25516985 A PL25516985 A PL 25516985A PL 25516985 A PL25516985 A PL 25516985A PL 147635 B1 PL147635 B1 PL 147635B1
Authority
PL
Poland
Prior art keywords
data
counter
registers
register
memory
Prior art date
Application number
PL25516985A
Other languages
English (en)
Other versions
PL255169A1 (en
Inventor
Zbigniew Krzyzanowski
Wiktor Kuncewicz
Slawomir Bronowski
Maciej Chachulski
Original Assignee
Inst Tech Elektronowej
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inst Tech Elektronowej filed Critical Inst Tech Elektronowej
Priority to PL25516985A priority Critical patent/PL147635B1/pl
Publication of PL255169A1 publication Critical patent/PL255169A1/xx
Publication of PL147635B1 publication Critical patent/PL147635B1/pl

Links

Landscapes

  • Microcomputers (AREA)

Description

Przedmiotem wynalazku jest sposób sterowania mikrokomputerem Jednostrukturowym i uklad mikrokomputera stosujacy ten sposób. Mikrokomputer ten przeznaczony jest do stoso¬ wania w systemach sterowania i systemach liczacych w sensie uniwersalnym, w róznych dzie¬ dzinach tam gdzie program uzytkowy miesci sie w jego ograniczonej pamieci programu. Dotych¬ czas znane rozwiazania tego typu mikrokomputerów, stosuja rejestry liczników programu, nie¬ zaleznie od innych bloków funkcjonalnych, zbudowane ze skomplikowanych przerzutników typu T, przez co zajmujacych duza czesc powierzchni ukladu.W rozwiazaniach stosujacych rejestry wskaznikowe adresowania danych, umieszczone w pamieci danych - zachodzi koniecznosc wykonywania az dwóch dostepów do pamieci danych w celu pobrania lub zapisu jednego slowa, ponadto koniecznosc wykorzystywania w tym przypadku arytmometru do inkrementacji zawartosci rejestrów wskazników danych jest takze niekorzystna, gdyz blokuje arytmometr dla innych operacji. Istnieja takze rozwiazania stosujace niezalez¬ ne rejestry wskaznikowe adresowania danych lecz inkrementacja ich zawartosci dokonywana jest w arytmometrze.Istota aposobu wedlug wynalazku jest to, ze w takcie pierwszym cyklu maszynowego wykonuje sie zaleznie od stanu programu i stanu mikrokomputera, inkrementacje zawartosci rejestru licznika uniwersalnego oraz w przypadku wykonywania rozkazów pobierajacych dane, pobranie slowa z pamieci danych adresowanej za pomoca wskaznika danych, utworzonego jako kombinacja jednego z dwóch rejestrów adresowania wierszy i jednego z dwóch rejestrów adre-2 147 635 sowania kolumn, przy czym dla czesci rozkazów operacje uzupelnia sie równoczesna inkremen- tacja aktualnie wykorzystywanego rejestru, a w takcie drugim dokonuje sie inkrementacji adresu kolejnego slowa pamieci programu w przypadku, gdy w trakcie aktualnie wykonywanego cyklu maszynowego z pamieci programu pobierane jest slowo, zas w pozostalych przypadkach operacje pobrania danej z pamieci danych z uwarunkowaniem, adresowaniem i uzupelnieniem Jak w takcie pierwszym, a w takcie trzecim wykonuje sie, zaleznie od stanu programu i mi¬ krokomputera, inkrementacje zawartosci drugiego licznika uniwersalnego oraz w przypadku wykonywania rozkazów zapisujacych dane, operacje zapisu danej do pamieci danych z adreso¬ waniem i uzupelnianiem jak w takcie pierwszym.Istota ukladu wedlug wynalazku jest to, ze posiada on zintegrowany w postaci pa¬ mieci RAM o n ? 3 wierszach zespól rejestrów, którego n + 1 wierszy sa kolejnymi rejestra¬ mi stosu liczników rozkazów, gdzie licznik oznaczony numerem zero jest licznikiem rozkazów dla zerowego zaglebienia stosu, a kazdy z pozostalych dwóch wierszy dzieli sie na rejestr licznika uniwersalnego oraz rejestr czesci wskaznika adresowania danych, posiadajace nie¬ zalezne linie wybierajace, zas linie hitów zespolu rejestrów polaczone sa z uniwersalnym inkrementerem, który w przypadku wspólpracy z licznikiem programu ma dlugosc równa dlugos¬ ci tego licznika, a w przypadku wspólpracy z licznikiem uniwersalnym i jednoczesnie reje¬ strem czesci wskaznika adresowania danych ma postac dwóch niezaleznych inkrementerów, kaz¬ dy o dlugosci odpowiedniego rejestru. Mikrokomputer posiada wspólny dekoder wierszy pamie¬ ci danych i pamieci programu. Mikrokomputer wedlug wynalazku odznacza sie szeregiem ko¬ rzystnych cech, tak uzytkowych jak i funkcjonalnych oraz pozwala wyeliminowac wady znanych rozwiazan. Jednoczesnie wykonywanie operacji inkrementacji z dostepem do pamieci powoduje zmniejszenie czasu wykonywania instrukcji, a tym samym calych programów. Wykorzystanie rejestrów wskaznika danych do wykonywania niektórych typów dzialan arytmetycznych pozwala zaoszczedzic wiele slów pamieci programu i znacznie skrócic czas wykonywania dzialan na ciagach danych (kodowanych binarnie badz w zapisie BCD). Umieszczenie liczników uniwersal¬ nych oraz rejestrów wskaznika adresowania wierszy pamieci danych w jednym bloku z licznikami programu pozwala na budowe tej czesci ukladu z szeregu identycznych komórek pamieciowych statycznych (6 tranzystorów) badz dynamicznych (1 tranzystor na komórke), tworzacych pamiec RAM, przy czym wszystkie elementy wykorzystuja w dzialaniu jeden wspólny inkrementer. Taki sposób integracji tych ukladów pozwala wydatnie zmniejszyc powierzchnie ukladu scalonego, realizujacego funkcje opisywanego mikrokomputera, jak równiez skrócic czas projektowania jego maski. Zmniejszenie powierzchni ukladu pociaga za soba zmniejszenie kosztów wytwarza¬ nia (wiekszy uzysk technologiczny). Zastosowanie wspólnego dekodera wierszy dla pamieci da¬ nych i programu pociaga za soba oszczednosc powierzchni struktury ukladu scalonego (1 deko¬ der zamiast dwóch) - wiekszy uzysk technologiczny i prostsza konstrukcja maski.Mikrokomputer o opisanych cechach jest zaprojektowany jako uklad o 4-bitowym slo¬ wie danych. W okresie ostatnich lat pojawilo sie co najmniej kilkanascie rodzin tego typu ukladów, produkowanych glównie przez firmy japonskie i amerykanskie z przeznaczeniem do za¬ stosowania przede wszystkim w sprzecie powszechnego uzytku. Opisane cechy funkcjonalne po¬ zwalaja zastosowac mikrokomputer wedlug wynalazku równiez profesjonalnie, jako sterownik badz uklad kalkulatorowy. Nieznane sa uklady mikrokomputerów jednostrukturowych, umozliwia¬ jace trzy dostepy do pamieci danych w jednym trzytaktowym cyklu maszynowym - jak to ma miejsce w przedmiocie wynalazku. Podobnie nieznane sa uklady mikrokomputerów jednostruktu- rowych, umozliwiajace równoczesnie (w jednym takcie) z dostepem do pamieci danych inkre¬ mentacje zawartosci rejestru wskaznika danych.Sposób wedlug wynalazku i uklad mikrokomputera zostana blizej objasnione na przy¬ kladzie wykonania, przedstawionym na rysunku i pokazujacym schemat tego ukladu. Zintegrowa¬ ny w postaci pamieci RAM zespól rejestrów ZR, którego 4 wiersze sa kolejnymi rejestrami147 635 3 etosu liczników rozkazów P00 - PC3# a pozostala dwa wiersze podzielone sa na rejestr licz¬ nika uniwersalnego HM1f TIMjtf i rejestr wskaznika adresowania pamieci danych X1, Xfft po¬ laczony jest poprzez linie bitów z jednym, uniwersalnym inkrementerem INC. Inkrementer ten moze pracowac w Jednym z dwóch trybów: w przypadku wspólpracy z jednym z liczników programu (aktualnie wybranym przez wskaznik stosu SP) ma on dlugosc równa dlugosci licz¬ nika rozkazów (12 bitów), zas w przypadku wspólpracy z licznikiem uniwersalnym Tlfi0 lub TIM1 i jednoczesnie rejestrem czesci wskaznika adresowania wierszy pamieci danych Xfl lub X1 przyjmie postac dwóch niezaleznych inkrementerów - o dlugosci 8 bitów dla rejestrów liczników uniwersalnych TIM0, TIM1 i drugiego o dlugosci 4 bitów dla rejestrów wskazników danych XCS, X1. Rejestry liczników uniwersalnych i rejestry wskazników danych xd9 X1 po¬ siadaja niezalezne linie wybierajace. Rejestry liczników rozkazów wybierane sa poprzez li¬ nie polaczone ze wskaznikiem stosu SP. Przykladowy stos liczników rozkazów jest 3-poziomo- wy, dla zerowego zaglebienia stosu wybrany jest licznik PCO, przy przejsciu do wykonywania podprogramu aktywny Jest sygnal D (DOWN SP), sterujacy wskaznikiem stosu, który wybiera kolejny licznik rozkazów PC1 itd. Przy powrocie z podprogramu na skutek dzialania instruk¬ cji RET aktywny jest sygnal U (UP SP), sterujacy wskaznikiem stosu i wybierany jest licz¬ nik rozkazów o kolejnym nizszym zaglebieniu. Inkrementacja badz dekrementacja wskaznika stosu SP odbywa sie w takcie T2« Ustawianie lub odczyty zawartosci liczników rozkazów do¬ konywane jest poprzez linie bitów polaczone z wewnetrzna szyna danych IDB. Ilosc linii szyny danych równa jest ilosci bitów slowa danych. Dwanascie linii bitów zespolu rejest¬ rów sluzy do adresowania pamieci programu PM. Adresowanie slowa pamieci programu odbywa sie poprzez dekoder kolumn CD oraz dekoder wierszy RD. Dekoder wierszy RD jest wspólny do wybierania wierszy zarówno pamieci programu PM Jak 1 pamieci danych DM. Inkrementacja adresu pamieci programu PC <— PC ? 1 dokonywana jest w takcie T2, natomiast w takcie na¬ stepnym T3 wybrane slowo z pamieci PM przesylane jest do rejestru rozkazów IR. Zawartosc rejestru rozkazów dekodowana jest równiez w takcie T3 1 przesylana do ukladu sterowania centralnego MC, a jednoczesnie do arytmometru ALU. Wymiana informacji pomiedzy rejestrem rozkazów i arytmometrem Jest dwukierunkowa. Z drugiej strony arytmometr posiada mozliwosc dwukierunkowej transmisji informacji z szyna danych IDB. W sklad arytmometru wchodzi re¬ jestr akumulatora A, o dlugosci slowa danych, do którego przesylane sa wyniki operacji arytmetyczno-loglcznych. Wymiana informacji pomiedzy blokiem arytmometru ALU, a pamiecia danych DM i rejestrami ukladów i/O (WE/Wy) odbywa sie poprzez wewnetrzna szyne danych IDB.W ukladzie sterowania centralnego MC generowane sa sygnaly taktów T1, T2, T3f synchroni¬ zujace prace mikrokomputera, sygnaly UD sterujace wskaznikiem stosu SP, sygnaly S1, S2 sluzace do selekcji rejestrów xf lub X1 (sygnal S1) oraz rejestrów 10 lub T1 (sygnal S2), a takze sygnaly CY1, CI2 do sterowania inkrementacja. Pozostale sygnaly sterujace nie sa istotne w przedmiocie wynalazku. Uklad sterowania inkrementacja oznaczony ICC dziala w tak¬ cie T2. Adresowanie kolumn pamieci danych DM przez jeden z rejestrów wskaznika danych 10 lub T1 dokonywane jest poprzez multiplekser MUX. Multiplekser sterowany sygnalem S2 wybie¬ ra rejestr Y$ lub Y1. Do sterowania rejestrów wskaznika adresowania danych DP sluzy uklad DPC (DATA POINTER CONTROL), którego dzialanie moze zachodzic w takcie pierwszym T1 i w takcie trzecim T3* W trakcie wykonywania ostatniego cyklu maszynowego dla danego rozkazu w takcie T2 inkrementowana Jest zawartosc licznika rozkazów (PC <— PC + 1) i adresowany Jest nastepny rozkaz pamieci programu. To "nakladkowanie" mikrooperacji mikrokomputera daje przyspiesze¬ nie jego dzialania.4 147 655 Zastrzezenia patentowe 1« Sposób eterowania mikrokomputerem jednostrukturowym, gdzie wykonywanie poszcze¬ gólnych operacji odbywa sie z podzialem w czasie w trakcie taktów odpowiednich cykli ma¬ szynowych, oraz gdzie kazdy cykl maszynowy dzieli sie na trzy takty, znamienny tym, ze w takcie pierwszym (T1) wykonuje sie, zaleznie od stanu programu i stanu mikro¬ komputera, inkreroentacje zawartosci rejestru licznika uniwersalnego (TIM0) oraz w przy¬ padku wykonywania rozkazów pobierajacych dane, pobranie slowa z pamieci danych adresowanej za pomoca wskaznika danych, utworzonego jako kombinacja jednego z dwóch rejestrów (X0, X1) adresowania wierszy 1 jednego z dwóoh rejestrów (10, Y1) adresowania kolumn, przy czym dla czesci rozkazów operacje uzupelnia sie równoczesna inkrementacja aktualnie wykorzystywane¬ go rejestru (X0, X1), a w takcie drugim (T2) dokonuje sie lnkrementacjl adresu kolejnego slowa pamieci programu w przypadku, gdy w trakcie aktualnie wykonywanego cyklu maszynowego s pamieci programu pobierane jest slowo, zas w pozostalych przypadkach operacje pobrania danej z pamieci danych z uwarunkowaniem, adresouaniom i uzupelnieniem jak w takci® pisnre- szym (T1), a w takcie trzecim (T3) wykonuje sie, zaleznie od stanu programu 1 mikrokompu¬ tera, inkrementacje zawartosci drugiego licznika uniwersalnego (TIM1) oraz w przypadku wy¬ konywania rozkazów zapisujacych dane, operacje zapisu danej do pamieci danych z adresowa¬ niem 1 Inkrementacja jak w takcie pierwszym (T1). 2. Sposób wedlug zastrs. 1, znamienny tym, ze wskaznik danych ogra¬ niczony jest do rejestrów (IÓ, 11). 3* Uklad mikrokomputera jednostrukturowego, znamienny tym, ze ma zintegrowany w postaci pamieci RAN on*3 wierszach zespól rejestrów (ZR), którego n + 1 wierszy sa kolejnymi rejestrami stosu liczników rozkazów (PCC/ - PCn), gdzie licznik ozna¬ czony numerem zero PC^ jest licznikiem rozkazów dla zerowego zaglebienia stosu, a kazdy z pozostalych dwóoh wierszy dzieli sie na rejestr licznika uniwersalnego (TIMCi), (TIM1) oraz rejestr czesci wskaznika adresowania danych (10, 11) posiadajace niezalezne linie wybiera¬ jace, zas linie bitów zespolu rejestrów (ZR) polaczone sa z uniwersalnym lnkrementerem (INC), który w przypadku wspólpracy z licznikiem programu (PC0 - PCn) ma dlugosó równa dlugosci tego licznika, a w przypadku wspólpracy z licznikiem uniwersalnym (Tlfld, T1M1) 1 Jednoczesnie rejestrem czesci wskaznika adresowania danych (X0, X1) ma postac dwóch nie¬ zaleznych lnkrementerów, kazdy o dlugosci odpowiedniego rejestru* 4* Uklad mikrokomputera wedlug zastrz* 2, znamienny tym, ze posiada wspólny dekoder wierszy (RD) pamieci danych (DM) 1 pamieci programu (PM). 5. Uklad mikrokomputera wedlug zastrz* 4, znamienny tym, ze wskaznik danych ograniczony jest do rejestrów (Xj2f, X1)»147 635 n T2 T3 U D 51 S2 CY< CV2 OTOCZENIE ttttttttt nu nnoo T3 MC TT IR 7T PM CD t i in'c timo TiM 1 PCO PC1 PC2 n I /O £=a TFCT MIKROK.OrlPL/T£i? RD 7T X0 XI 1 ALU fc 3 DM p=J CJ) S2 i i^ MUX h.YO Y1 ICC DPC 5P I—CY1 — CY2 *— T2 — 51 \< T1 T3 • U ¦U T2 n H tdb PL

Claims (5)

  1. Zastrzezenia patentowe 1. « Sposób eterowania mikrokomputerem jednostrukturowym, gdzie wykonywanie poszcze¬ gólnych operacji odbywa sie z podzialem w czasie w trakcie taktów odpowiednich cykli ma¬ szynowych, oraz gdzie kazdy cykl maszynowy dzieli sie na trzy takty, znamienny tym, ze w takcie pierwszym (T1) wykonuje sie, zaleznie od stanu programu i stanu mikro¬ komputera, inkreroentacje zawartosci rejestru licznika uniwersalnego (TIM0) oraz w przy¬ padku wykonywania rozkazów pobierajacych dane, pobranie slowa z pamieci danych adresowanej za pomoca wskaznika danych, utworzonego jako kombinacja jednego z dwóch rejestrów (X0, X1) adresowania wierszy 1 jednego z dwóoh rejestrów (10, Y1) adresowania kolumn, przy czym dla czesci rozkazów operacje uzupelnia sie równoczesna inkrementacja aktualnie wykorzystywane¬ go rejestru (X0, X1), a w takcie drugim (T2) dokonuje sie lnkrementacjl adresu kolejnego slowa pamieci programu w przypadku, gdy w trakcie aktualnie wykonywanego cyklu maszynowego s pamieci programu pobierane jest slowo, zas w pozostalych przypadkach operacje pobrania danej z pamieci danych z uwarunkowaniem, adresouaniom i uzupelnieniem jak w takci® pisnre- szym (T1), a w takcie trzecim (T3) wykonuje sie, zaleznie od stanu programu 1 mikrokompu¬ tera, inkrementacje zawartosci drugiego licznika uniwersalnego (TIM1) oraz w przypadku wy¬ konywania rozkazów zapisujacych dane, operacje zapisu danej do pamieci danych z adresowa¬ niem 1 Inkrementacja jak w takcie pierwszym (T1).
  2. 2. Sposób wedlug zastrs. 1, znamienny tym, ze wskaznik danych ogra¬ niczony jest do rejestrów (IÓ, 11).
  3. 3. * Uklad mikrokomputera jednostrukturowego, znamienny tym, ze ma zintegrowany w postaci pamieci RAN on*3 wierszach zespól rejestrów (ZR), którego n + 1 wierszy sa kolejnymi rejestrami stosu liczników rozkazów (PCC/ - PCn), gdzie licznik ozna¬ czony numerem zero PC^ jest licznikiem rozkazów dla zerowego zaglebienia stosu, a kazdy z pozostalych dwóoh wierszy dzieli sie na rejestr licznika uniwersalnego (TIMCi), (TIM1) oraz rejestr czesci wskaznika adresowania danych (10, 11) posiadajace niezalezne linie wybiera¬ jace, zas linie bitów zespolu rejestrów (ZR) polaczone sa z uniwersalnym lnkrementerem (INC), który w przypadku wspólpracy z licznikiem programu (PC0 - PCn) ma dlugosó równa dlugosci tego licznika, a w przypadku wspólpracy z licznikiem uniwersalnym (Tlfld, T1M1) 1 Jednoczesnie rejestrem czesci wskaznika adresowania danych (X0, X1) ma postac dwóch nie¬ zaleznych lnkrementerów, kazdy o dlugosci odpowiedniego rejestru*
  4. 4. * Uklad mikrokomputera wedlug zastrz* 2, znamienny tym, ze posiada wspólny dekoder wierszy (RD) pamieci danych (DM) 1 pamieci programu (PM).
  5. 5. Uklad mikrokomputera wedlug zastrz* 4, znamienny tym, ze wskaznik danych ograniczony jest do rejestrów (Xj2f, X1)»147 635 n T2 T3 U D 51 S2 CY< CV2 OTOCZENIE ttttttttt nu nnoo T3 MC TT IR 7T PM CD t i in'c timo TiM 1 PCO PC1 PC2 n I /O £=a TFCT MIKROK.OrlPL/T£i? RD 7T X0 XI 1 ALU fc 3 DM p=J CJ) S2 i i^ MUX h. YO Y1 ICC DPC 5P I—CY1 — CY2 *— T2 — 51 \< T1 T3 • U ¦U T2 n H tdb PL
PL25516985A 1985-08-29 1985-08-29 Method of controlling a single-structure microcomputer and system therefor PL147635B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PL25516985A PL147635B1 (en) 1985-08-29 1985-08-29 Method of controlling a single-structure microcomputer and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PL25516985A PL147635B1 (en) 1985-08-29 1985-08-29 Method of controlling a single-structure microcomputer and system therefor

Publications (2)

Publication Number Publication Date
PL255169A1 PL255169A1 (en) 1987-06-15
PL147635B1 true PL147635B1 (en) 1989-07-31

Family

ID=20028127

Family Applications (1)

Application Number Title Priority Date Filing Date
PL25516985A PL147635B1 (en) 1985-08-29 1985-08-29 Method of controlling a single-structure microcomputer and system therefor

Country Status (1)

Country Link
PL (1) PL147635B1 (pl)

Also Published As

Publication number Publication date
PL255169A1 (en) 1987-06-15

Similar Documents

Publication Publication Date Title
US4694394A (en) Microprocessor system having a multiplexed address/data bus which communicates with a plurality of memory and input/output devices including TTL output gates
US4467420A (en) One-chip microcomputer
EP0174845B1 (en) Semiconductor memory device
KR850004680A (ko) 집적 프로세서
US3594732A (en) General purpose digital computer
GB1246128A (en) Electronic computer
US4805092A (en) Electronic circuit for extending the addressing capacity of a processor
US4414622A (en) Addressing system for a computer, including a mode register
PL147635B1 (en) Method of controlling a single-structure microcomputer and system therefor
EP0374733B1 (en) Single-chip microcomputer including EPROM therein
US4811266A (en) Multifunction arithmetic indicator
US4586154A (en) Data word normalization
US4328566A (en) Dynamic memory refresh system with additional refresh cycles
EP0217479A2 (en) Information processing unit
US4408276A (en) Read-out control system for a control storage device
Halang On methods for direct memory access without cycle stealing
US5491826A (en) Microprocessor having register bank and using a general purpose register as a stack pointer
US4093984A (en) Data processing system having a cycle control function
US5802332A (en) Single-chip microcomputer and electronic device using the same
EP0020972B1 (en) Program controlled microprocessing apparatus
JPS55115155A (en) One chip multi-microcomputer
US5130923A (en) Selective dynamic RAM address generator with provision for automatic refresh
KR920008597A (ko) 마이크로 컴퓨터
Bergman A switched memory decoding circuit for bus oriented microprocessor systems
SU652615A1 (ru) Устройство дл обращени к блокам оперативной пам ти