Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałFranciszek Borkowski Został zmieniony 9 lat temu
1
1 UKŁADY LOGICZNE Prowadzi: Tadeusz ŁUBA, (GE pok. 483) Wykład dla kierunków: Elektronika, Telekomunikacja
2
Organizacja Wykład Ćwiczenia F = H(A,G(B)) G P(B): P(A) G P D 2 T. Łuba dr G. Janczyk mgr D. Ojrzeńska –Wójter dr D. Rosołowski dr P. Szotkowski dr A. Wielgus dr B. Zbierzchowski
3
3 Egzamin... Ćwiczenia 35 pkt. Egzamin 65 pkt.
4
Literatura 1. Ashar P., Devadas S., Newton A. R.: Sequential logic synthesis, Kluwer Academic 2. Minimization Algorithms for VLSI Synthesis, Kluwer Academic Publishers, Boston, 1984. 3. Brown F. M.: Boolean Reasoning. The Logic of Boolean Equation, Kluwer Academic Publishers, 1990. 4. Brzozowski J. A, Seger C-J.: Asynchronous Circuits, Springer Verlag, New York 1995. 5. Brzozowski J., Łuba T.: Decomposition of Boolean Functions Specified by Cubes. Journal of Multiple-Valued Logic and Soft Computing. Vol. 9, pp. 377–417. Old City Publishing, Inc., Philadelphia 2003. 6. De Micheli G.: Synthesis and Optimization of Digital Circuits. McGraw-Hill, New York, 1994. Również tłumaczenie polskie: Synteza i optymalizacja układów cyfrowych. WNT, Warszawa 1998. 7. Devadas, S., Ghosh, A., and Keutzer, K. Logic Synthesis. McGraw-Hill, New York, 1994. 8. Gajski D.D.: Principles of digital design. Prentice-Hall International, New jersey 1997. 9. Hassoun S., Sasao T., Brayton R. (ed.): Logic Synthesis and Verification. Kluwer Academic Publishers, New York 2002. 10. Iman S., Pedram M.: Logic Synthesis for Low Power VLSI Design, Kluwer Academic Publishers, 1999. 11. Kamionka-Mikuła H., Małysiak H., Pochopień B.: Układy cyfrowe. Teoria i przykłady. Wyd. Pracowni Komputerowej Jacka Skalmierskiego. Gliwice 2003. 12. Kania D.: Synteza logiczna przeznaczona dla matrycowych struktur programowalnych typu PAL. Politechnika Śląska. Zeszyty Naukowe. Nr 1619. Gliwice 2004. 13. Katz R. H.: Contemporary logic design. The Benjamin/Cummings Publishing Company, Inc., Redwood City, 1994 14. Kohavi Z.: Switching and Finite Automata Theory. Mc-Graw-Hill, New York, 1978. 15. Kuźmicz W.: Układy ASIC w polskich realiach. Przegląd Telekomuni- kacyjny i Wiadomości Telekomunikacyjne, nr 8, pp. 457-460, 1995. 16. Lala P.K.: Practical digital logic design and testing. Prentice-Hall, New Jersey 1996. 17. Łuba T.(red.), Rawski M., Tomaszewicz P., Zbierzchowski B.: Synteza układów cyfrowych. WKŁ Warszawa 2003. 18. Łuba T., Zbierzchowski B., Zbysiński P.: Układy reprogramowalne dla potrzeb telekomunikacji cyfrowej. Przegląd Telekomunikacyjny i Wiadomości Telekomunikacyjne, nr 5, 2002. 19.Łuba T.: Synteza układów logicznych. Wyższa Szkoła Informatyki Stosowanej i Zarządzania, Wyd. 2, Warszawa 2001. 20.Łuba T.: Rola i znaczenie syntezy logicznej w technice cyfrowej układów programowalnych. Elektronika, str. 15 ¸ 19, nr 7-8, 2002. 21.Łuba T., Jasiński K., Zbierzchowski B.: Programowalne układy przetwarzania sygnałów i informacji - technika cyfrowa w multimediach i kryptografii, Przegląd Telekomunikacyjny i Wiado- mości Telekomunikacyjne, str. 408-418, nr 8-9, 2003. 22.Majewski W., Albicki A.: Algebraiczna teoria automatów. WNT, Warszawa 1980. 23.Mikołajczak B.: Algebraiczna i strukturalna teoria automatów. PWN, Warszawa – Łódź 1985. 24.Mulawka J.: Systemy ekspertowe. WNT, Warszawa 1996. 25.Mrózek A., Płonka L.: Analiza danych metodą zbiorów przybliżonych. Zastosowania w ekonomii, medycynie i sterowaniu. Akademicka Oficyna Wydawnicza PLJ, Warszawa 1999. 26.McCluskey E. J.: Logic design principles, with emphasis on testable semicustom circuits. Prentice-hall International, Inc., New Jersey 1986. 27.Pawlak Z.:Rough Sets. Theoretical Aspects of Reasoning about Data, Kluwer Academic Publishers, 1999. 28.Roth C. H.: Fundamentals of Logic Design. West Publ. CO., 1985. 29.Salsic Z., Smailagic A.: Digital systems design and prototyping using field programmable logic. Kluwer Academic Publishers, 1997. 30.Sasao T.: Switching Theory for Logic Synthesis, Kluwer Academic Publishers, 1999. 31.Sasao T.: Logic Synthesis and Optimization. Kluwer Academic Publishers,1993. 32.Słowiński R.(ed.): Intelligent Decision Support - Handbook of Applications and Advances of the Rough Sets Theory, Kluwer Academic Publishers, Dordrecht 1992. 33.Scholl C.: Functional Decomposition with Application to FPGA Synthesis. Kluwer Academic Publisher, Boston 2001. 34.Tyszer J.: Układy cyfrowe. Materiały pomocnicze do wykładów. Wyd. Politechniki Poznańskiej. Poznań 2000. 35.Zieliński C.: Podstawy projektowania układów cyfrowych. PWN, Warszawa 2003. 36.Zbysiński P., Pasierbiński J.: Układy programowalne – pierwsze kroki. Wyd. II, Wydawnictwo BTC. Warszawa 2004. Łuba T., Borowik G.: Synteza logiczna Oficyna Wydawnicza PW 2015 Łuba T., Ojrzeńska-Wójter D. Układy logiczne w zadaniach. PW Warszawa 2011
5
Literatura
6
6 Literatura dla najbardziej zainteresowanych
7
7
8
8
9
9
10
10 Rok 1847 Z układami logicznymi mamy do czynienia od dawna...
11
11 Już w latach 80. 20 wieku Układ logiczny
12
12 miliony bramek logicznych…dzisiaj …programowanie połączeń Programowalne moduły logiczne (Programmable Logic Devices) Nowa jakość…
13
13 Układy programowalne (Programmable Logic Devices) PLD to układy scalone, których właściwości funkcjonalne są definiowane nie przez producenta, lecz przez końcowego użytkownika. Najważniejsza cechą tych układów jest możliwość nadawania im (przez programowanie) określonych przez użytkownika cech funkcjonalnych, w jego laboratorium czy na biurku, a nie w fabryce.
14
14 F@*q~ PLD Układ kryptograficzny
15
15 Komputerowe systemy projektowania Ze względu na skomplikowaną budowę struktur programowalnych ich realizacja nie może się odbywać bez…
16
16 Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne 16 Komputerowe projektowanie…
17
Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne 17 Komputerowe projektowanie… …aż do zaprogramowania układu! Niestety aktualnie stosowane procedury syntezy logicznej nie są w pełni dostosowane do najnowszych technologii
18
Przykład – prosty układ kombinacyjny.type fr.i 10.o 1.p 25 0010111010 0 1010010100 0 0100011110 0 1011101011 0 1100010011 0 0100010110 0 1110100110 0 0100110000 0 0101000010 0 0111111011 1 0000010100 1 1101110011 1 0100100000 1 0100011111 1 0010000110 1 1111010001 1 1111101001 1 1111111111 1 0010000000 1 1101100111 1 0010001111 1 1111100010 1 1010111101 1 0110000110 1 0100111000 1.e Układ kombinacyjny x 1 x 2 x 3 x 10 UK y 18
19
Realizacja funkcji F w systemie Quartus QuartusII LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY tl27 IS PORT ( in: IN STD_LOGIC_VECTOR(9 DOWNTO 0); out: OUT STD_LOGIC_VECTOR(0 DOWNTO 0) ); END tl27; ARCHITECTURE tl27_arch OF tl27 IS BEGIN pandor: PROCESS (in) BEGIN CASE in IS WHEN "0010111010" => out <= "0"; WHEN "1010010100" => out <= "0"; WHEN "0100011110" => out <= "0"; WHEN "1011101011" => out <= "0"; WHEN "1100010011" => out <= "0"; WHEN "0100010110" => out <= "0"; WHEN "1110100110" => out <= "0"; WHEN "0100110000" => out <= "0"; WHEN "0101000010" => out <= "0"; WHEN "0111111011" => out <= "1"; WHEN "0000010100" => out <= "1"; WHEN "1101110011" => out <= "1"; WHEN "0100100000" => out <= "1"; WHEN "0100011111" => out <= "1"; WHEN "0010000110" => out <= "1"; WHEN "1111010001" => out <= "1"; WHEN "1111101001" => out <= "1"; WHEN "1111111111" => out <= "1"; WHEN "0010000000" => out <= "1"; WHEN "1101100111" => out <= "1"; WHEN "0010001111" => out <= "1"; WHEN "1111100010" => out <= "1"; WHEN "1010111101" => out <= "1"; WHEN "0110000110" => out <= "1"; WHEN "0100111000" => out <= "1"; WHEN OTHERS => out <= "0"; END CASE; END PROCESS pandor; END tl27_arch; 19
20
Realizacja funkcji F w systemie Quartus QuartusII 23 komórki (Stratix) LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY tl27 IS PORT ( in: IN STD_LOGIC_VECTOR(9 DOWNTO 0); out: OUT STD_LOGIC_VECTOR(0 DOWNTO 0) ); END tl27; ARCHITECTURE tl27_arch OF tl27 IS BEGIN pandor: PROCESS (in) BEGIN CASE in IS WHEN "0010111010" => out <= "0"; WHEN "1010010100" => out <= "0"; WHEN "0100011110" => out <= "0"; WHEN "1011101011" => out <= "0"; WHEN "1100010011" => out <= "0"; WHEN "0100010110" => out <= "0"; WHEN "1110100110" => out <= "0"; WHEN "0100110000" => out <= "0"; WHEN "0101000010" => out <= "0"; WHEN "0111111011" => out <= "1"; WHEN "0000010100" => out <= "1"; WHEN "1101110011" => out <= "1"; WHEN "0100100000" => out <= "1"; WHEN "0100011111" => out <= "1"; WHEN "0010000110" => out <= "1"; WHEN "1111010001" => out <= "1"; WHEN "1111101001" => out <= "1"; WHEN "1111111111" => out <= "1"; WHEN "0010000000" => out <= "1"; WHEN "1101100111" => out <= "1"; WHEN "0010001111" => out <= "1"; WHEN "1111100010" => out <= "1"; WHEN "1010111101" => out <= "1"; WHEN "0110000110" => out <= "1"; WHEN "0100111000" => out <= "1"; WHEN OTHERS => out <= "0"; END CASE; END PROCESS pandor; END tl27_arch; 20
21
LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY tl27 IS PORT ( in: IN STD_LOGIC_VECTOR(9 DOWNTO 0); out: OUT STD_LOGIC_VECTOR(0 DOWNTO 0) ); END tl27; ARCHITECTURE tl27_arch OF tl27 IS BEGIN pandor: PROCESS (in) BEGIN CASE in IS WHEN "0010111010" => out <= "0"; WHEN "1010010100" => out <= "0"; WHEN "0100011110" => out <= "0"; WHEN "1011101011" => out <= "0"; WHEN "1100010011" => out <= "0"; WHEN "0100010110" => out <= "0"; WHEN "1110100110" => out <= "0"; WHEN "0100110000" => out <= "0"; WHEN "0101000010" => out <= "0"; WHEN "0111111011" => out <= "1"; WHEN "0000010100" => out <= "1"; WHEN "1101110011" => out <= "1"; WHEN "0100100000" => out <= "1"; WHEN "0100011111" => out <= "1"; WHEN "0010000110" => out <= "1"; WHEN "1111010001" => out <= "1"; WHEN "1111101001" => out <= "1"; WHEN "1111111111" => out <= "1"; WHEN "0010000000" => out <= "1"; WHEN "1101100111" => out <= "1"; WHEN "0010001111" => out <= "1"; WHEN "1111100010" => out <= "1"; WHEN "1010111101" => out <= "1"; WHEN "0110000110" => out <= "1"; WHEN "0100111000" => out <= "1"; WHEN OTHERS => out <= "0"; END CASE; END PROCESS pandor; END tl27_arch; Procedura dekompozycji Ciekawe jak zachowa się Quartus z nową procedurą syntezy logicznej? 2 komórki (Stratix) Dziesięć razy lepiej! 21
22
22 Skuteczne rozwiązanie tego problemu… Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne Nowe procedury syntezy logicznej Tradycyjne procedury syntezy logicznej …możemy projektować systemy cyfrowe lepiej niż ktokolwiek inny na świecie!
23
W medycynie do np. diagnozowania pacjentów W medycynie do np. diagnozowania pacjentów W bankach przy podejmowaniu decyzji o przydzieleniu kredytu W bankach przy podejmowaniu decyzji o przydzieleniu kredytu oraz spamu w sieciach telekomunikacyjnych oraz spamu w sieciach telekomunikacyjnych Przy wykrywaniu anomalii Przy wykrywaniu anomalii 23 Metody syntezy logicznej w zadaniach eksploracji danych Eksploracja danych (Data Mining) jest dynamicznie rozwijającą się dziedziną informatyki o szerokich zastosowaniach: w telekomunikacji, medycynie, bankowości…
24
http://logic.mimuw.edu.pl/~rses/ RSES ROSETTA Biomedical Centre (BMC) Uppsala, Sweden 24
25
Eksperymenty atributesobjectsRSES/ROSETTABłyskawicareducts trains3310>5 h out of memory<1 sec.689 KAZ223160 min.<1 sec.5574 house174354 sec.2 sec.1 audiology71200>5 h out of memory2 min.37367 dermatology35366>5 h out of memory90 min.115556 Nie są to systemy doskonałe i metodami syntezy logicznej można je znacznie udoskonalić 25
26
26 Więcej na ten temat na stronie przedmiotu w katalogu Artykuły i referaty: Łuba T. (et al.): Rola i znaczenie syntezy logicznej w eksploracji danych dla potrzeb telekomunikacji i medycyny. Przegląd Telekomunikacyjny i Wiadomości Telekomunikacyjne, Nr. 5, 2014. Łuba T., Rawski M., Zbierzchowski B.: Układy logiczne - niewykorzystane szanse techniki cyfrowej dla telekomunikacji i teleinformatyki, Przegląd Telekomunikacyjny i Wiadomości Telekomunikacyjne, Nr 8-9, 2008.
27
27 Podsumowanie Sytuacja ta czyni z Układów logicznych jedną z najciekawszych dziedzin techniki, której opanowanie może być kluczem do sukcesu zawodowego wielu specjalistów elektroniki, inżynierii komputerowej, telekomunikacji, a nawet inżynierii biomedycznej i eksploracji danych.
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.