Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałDominik Sobczyk Został zmieniony 8 lat temu
1
1 Tadeusz Łuba Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe spojrzenie na technikę cyfrową Komitet Elektroniki i Telekomunikacji PAN Instytut Łączności Warszawa Międzeszyn 28.10.2010
2
MOTYWACJA Niedocenianie ogromnych możliwości oferowanych przez technologię układów programowalnych Brak świadomości szerokich i nietypowych zastosowań Stosowanie tradycyjnych metod projektowania układów cyfrowych
3
Cechy wyróżniające układy programowalne od tradycyjnych struktur cyfrowych Wady komercyjnych narzędzi projektowania Zastosowanie nowych metod syntezy logicznej w projektowaniu układów przetwarzania sygnałów i informacji Plan prezentacji…
4
Najnowsze struktury programowalne FPGA (Field Programmable Gate Array) Elementy logiczne 256 X 8 256 X 16 128 X 16 128 X 32 Wbudowane bloki pamięci NOWOŚĆ! Elementy logiczne nie są bramkami
5
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
6
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;
7
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;
8
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)
9
niedoskonałość procedur syntezy logicznej Jaka jest przyczyna tej niekorzystnej sytuacji? Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne Tools are best at synthesizing fat, dumb and slow logic [Ray Andraka] [Ray Andraka]
10
10 Skuteczne rozwiązanie tego problemu… Specyfikacja HDL Synteza funkcjonalna Synteza logiczna Odwzorowanie technologiczne Nowe procedury syntezy logicznej Tradycyjne procedury syntezy logicznej Procedury dekompozycji
11
18.Hrynkiewicz E., Kania D.: Metody syntezy dedykowane dla struktur FPGA typu tablicowego. Kwartalnik Elektroniki i Telekomunikacji, 50, z. 3, pp. 325-342, 2004. 19.Rawski M., Tomaszewicz P., Selvaraj H., Łuba T.: Efficient Implementation of Digital Filters with Use of Advanced Synthesis Methods Targeted FPGA Architectures, DSD 2005, Proc. Eighth Euromicro Conference on DIGITAL SYSTEM DESIGN, Architectures, Methods and Tools, IEEE Computer Society, Christophe Wolinski (Ed.), Porto, Portugal, 2005. 20.Borowik G., Falkowski B., Łuba T.: Cost-Efficient Synthesis for Sequential Circuits Implemented Using Embedded Memory Blocks of FPGA's. Proc. of 10th IEEE Workshop on Design and Diagnostics of Electronic Circuits and Systems, pp. 99-104, April 2007. 21.Brzozowski J. A., Łuba T.: Decomposition of Boolean Functions Specified by Cubes. Journal of Multiple- Valued Logic and Soft Computing, Vol. 9, Old City Publishing, Inc., Philadelphia, pp. 377–417, 2003. 22.Łuba T.: Multi-Level Logic Synthesis Based on Decomposition. Microprocessors and Microsystems, vol. 18, No. 8, pp. 429-437, 1994. 23.Łuba T., Selvaraj H., Nowicka M., Kraśniewski A.: Balanced multilevel decomposition and its applications in FPGA-based synthesis, in Saucier G., Mignotte A. (ed.), Logic and Architecture Synthesis, Chapman&Hall, 1995. 24.Łuba T, Selvaraj H.: A General Approach to Boolean Function Decomposition and its Applications in FPGA-based Synthesis. VLSI Design, Special Issue on Decompositions in VLSI Design, Vol. 3, Nos. 3-4, pp. 289-300, 1995. 25.Rawski M., Selvaraj H., Łuba T.: An application of functional decomposition In ROM-based FSM implementation In FPGA devices. Journal of systems Architecture, Vol. 51, pp. 424-434, 2005. 26.Nowicka M., Łuba T., Rawski M.: FPGA-Based Decomposition of Boolean Functions. Algorithms and Implementation, Proc. of the 6th International Conference on Advanced Computer Systems, pp. 502–509, Szczecin 1999. 27.Rawski M., Łuba T.: FSM Implementation in Embedded Memory Blocks Using Concept of Decomposition. IFAC Workshop Programmable Devices and Systems, PDS’2001, pp. 301 – 306, Gliwice 2001. 28.Rawski M., Jóźwiak L., Łuba T.: Functional decomposition with an efficient input support selection for sub-functions based on information relationship measures. Journal of Systems Architecture, 47, pp. 137 – 155, Elsevier Science B.V., 2001. 29.Łuba T., Rawski M., Jachna Z.: Functional Decomposition as a Universal Method of Logic Synthesis for Digital Circuits, MIXED Design of Integrated Circuits And Systems, str. 285-290, Wrocław, Poland 20-22 June 2002. 30.Selvaraj H., Rawski M., Sapiecha P., Łuba T.: Functional Decomposition – The Value and Implication for Both Digital Designing and Data Analysis, Fifteenth Int. Conference on Systems Engineering, pp. 414–420, Las Vegas, 2002. 31.Rawski M., Tomaszewicz P., Łuba T.: Logic Synthesis Importance in FPGA-based Designing of Information and Signal Processing Systems, Proceedings of International Conference on Signals and Electronic Systems ICSES'04, pp. 425-428, 13-15 September 2004, Poznań, Poland. 32.Rawski M., Tomaszewicz P., Łuba T.: Logic Synthesis Importance in FPGA-based Designing of Information and Signal Processing Systems, Proceedings of International Conference on Signals and Electronic Systems ICSES'04, Sept. 2004, Poznań, Poland. 33.Rawski M., Łuba T., Jachna Z., Tomaszewicz P.: The influence of functional decomposition on modern digital design process, Chapter 17 w Design of Emmbedded Control Systems, Adamski M. et al.(Eds.), Springer 2005. 1.Hassoun S., Sasao T.: Logic Synthesis and Verification. Kluwer Academic Publishers, New York 2002. 2.Lai Y.T., Pan K.R., Pedram M.: OBDD-Based Function Decomposition: Algorithms and Implementation. IEEE Transactions on Computer-Aided Design, vol. CAD-15, No. 8, s. 977 ¸ 990, Aug. 1996. 3.Perkowski M., Marek-Sadowska M., Jóźwiak L., Łuba T., Grygiel S., Nowicka M., Malvi R., Wang Z., and Zhang S.: Decomposition of Multiple-Valued Relations, International Symposium on Multiple-Valued Logic, pp. 13-18, Antigonish, Nova Scotia, Canada, 1997. 4.Stanion T., and Sechen C.: A method for Finding Good Ashenhurst Decomposition and Its Application to FPGA Synthesis, 32 Design Automation Conference, pp. 60-64, San Francisco 1995. 5.Wurth B., Schlichtman U., Eckl K., Antreich K.J.: Functional Multiple-Output Decomposition with Application to Technology Mapping for Lookup Table-Based FPGAs. ACM Transactions on Design Automation of Electronic System, vol. 4, No. 3, pp. 313 ¸ 350, 1999. 6.Scholl C.: Functional Decomposition with Application to FPGA Synthesis. Kluwer Academic Publishers, Boston 2001. 7.Chang S. C., Marek-Sadowska M., Hwang T. T.: Technology Mapping for TLU FPGAs Based on Decomposition of Binary Decision Diagrams. IEEE Trans. on CAD, vol. 15, no. 10, October, 1996. 8.Cong J. Yan K.: Synthesis for FPGAs with embedded memory blocks. In: Proc. of the 2000 ACM/SIGDA 8th International Symposium on Field Programmable Gate Arrays, ACM Press NY, 2000, Monterey, California. 9.Krishnamoorthy S., Tessier R.: Technology Mapping Algorithms for Hybrid FPGAs Containing Lookup Tables and PLAs. In: IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 22, No. 5, 2003. 10.Wilton S. J. E.: SMAP: Heterogeneous Technology Mapping for FPGAs with Embedded Memory Arrays. In: ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, pp. 171-178, 1998. 11.Lai Y.T., Pan K.R., Pedram M., Vrudhula S.: FGMap: A Technology Mapping Algorithm for Look-up Table Type FPGA Synthesis. Proc. of 30-th DAC, pp. 642-647, 1993. 12.Hwang T., Owens R.M., Irwin M., Wang K.: Logic synthesis for field programmable gate arrays. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 13(10): 1280 ¸ 1287, 1994. 13.Jóźwiak L.: General Decomposition and its Use in Digital Circuit Synthesis. VLSI Design, Special Issue on Decompositions in VLSI Design, vol. 3, Nos. 3-4, pp. 225-248, 1995. 14.Sasao T.: Logic Synthesis and Optimization. Kluwer Academic Publishers,1993. 15.Sasao T., Iguchi Y., Suzuki T.: On LUT Cascade realizations of FIR Filters, DSD 2005, Proc. Eighth Euromicro Conference on DIGITAL SYSTEM DESIGN, Architectures, Methods and Tools, IEEE Computer Society, Porto, Portugal, Sept. 2005. 16.Shin H., Kim C.: Performance-Oriented Technology Mapping for LUT-Based FPGAs. IEEE Trans on VLSI Systems, vol. 3, No. 2, pp. 323-327, June 1995. 17.Sangiovanni-Vincentelli A., Gamal A. and Rose J.: Synthesis Methods for Field Programmable Gate Arrvays, Proc.IEEE, Vol. 81, No. 7, pp. 1057–1083, 1993. Łuba T., Selvaraj H.: A General Approach to Boolean Function Decomposition and its Applications in FPGA-based Synthesis, VLSI Design, Special Issue on Decompositions in VLSI Design, Vol. 3, Nos. 3-4, 1995. 11 Publikacje na temat dekompozycji Brzozowski J. A., Łuba T.: Decomposition of Boolean Functions Specified by Cubes. Journal of Multiple- Valued Logic and Soft Computing, Vol. 9, Old City Publishing, Inc., Philadelphia, 2003. Hrynkiewicz E., Kania D.: Metody syntezy dedykowane dla struktur FPGA typu tablicowego. Kwartalnik Elektroniki i Telekomunikacji, 50, z. 3, 2004.
12
12 Dekompozycja funkcjonalna Pomimo wielu wysiłków związanych z dekompozycją funkcjonalną jej zastosowania rzadko są wykorzystywane w praktyce G H UV F
13
13 Nowe metody sprzętowo-programowego przetwarzania sygnałów i obrazów dla potrzeb systemów informacyjnych Novel digital signal and image processing software and hardware for information system Konkurs polsko-singapurski o współpracy naukowo-technicznej.
14
Zastosowanie nowych procedur syntezy logicznej do projektowania układów cyfrowego przetwarzania sygnałów? … w szczególności opracowanie procedur dostosowanych do heterogenicznych struktur FPGA.
15
Filtry cyfrowe Register Data in Data out MAC unit Loop algorithm Jedną z częściej stosowanych operacji DSP jest operacja MAC Filtry falkowe Transformaty: DFT, FFT Multiply and Accumulate:
16
Wiele operacji mnożenia i dodawania Mnożenie z akumulacją ]1[]1[...]1[]1[]0[]0[][][, 1 0 NxNcxcxcnxncy N n xc … suma iloczynów: Ustalony współczynnik n-ta próbka Register Data in Data out MAC unit Loop algorithm Operacja MAC
17
X[N-1]●●●X[1]X[0] C[N-1]●●●C[1]C[0] Rejestr przesuwający +R Układ mnożącyAkumulator Realizacja bezpośrednia …nie jest odpowiednia dla struktur FPGA wygodna dla procesorów sygnałowych Ogólnego przeznaczenia!
18
Arytmetyka rozproszona X B-1 [0]●●●X 1 [0]X 0 [0] X B-1 [1]●●●X 1 [1]X 0 [1] X B-1 [N-1]●●●X 1 [N-1]X 0 [N-1] LUT +R Rejestr przesuwający Logika DA Akumulator Układ kombinacyjny typu LUT Do syntezy DA warto stosować dekompozycję!!!
19
Wyniki eksperymentów dla układów DA filtrów cyfrowych FIR Tablica DA wejścia/wyjścia Komórki LUT DA bez dekompozycji DA z dekompozycją F47/8129 F511/114532 F611/116645 F711/124835 F815/1213664 F919/16279159 ∑586344 %10058 Ponad 40% redukcja zasobów sprzętowych
20
Wpływ dekompozycji na implementację filtrów FIR FIR Struktura sumatorów Bez dekompozycjiZ dekompozycją LCsF max [MHz]LCsF max [MHz] F4 pipel.28851.2826453.76 comb.22425.2520426.60 F5 pipel.64247.6253052.36 comb.52721.0544422.03 F6 pipel.80838.6163241.49 comb.71019.2755119.61 F7 pipel.68047.6256047.85 comb.57620.6247620.96 F8 pipel.140442.7483448.31 comb.131422.7374622.73 F9 pipel262431.25167238.61 comb.253314.47156420.92 ∑ 123308477 % 10068
21
Journals 1. 1. C. C. Lozano, B. J. Falkowski, and S. Rahardja. Properties and relations for fast linearly independent arithmetic transforms. IET Signal Processing, 1(2):82 95, June 2007. 2. 2. M. Rawski. Decomposition of Boolean function Sets, Electronics and Telecommunications Quarterly, vol. 53, No. 3, pp. 231-249, Warsaw 2007. 3. 3. B. J. Falkowski, C. C. Lozano, and T. Łuba. Family of fastest linearly independent transforms over GF(3): generation, relations, and hardware implementation. Journal of Multiple- Valued Logic and Soft Computing, 13(4 6): 379 396, September 2007. 4. 4. M. Rawski, B. J. Falkowski, and T. Łuba. Digital signal processing designing for FPGA architectures. Facta Universitatis, 20(3): 459 477, December 2007. 5. 5. M. Rawski, H. Selvaraj, B. J. Falkowski, T. Łuba. Significance of Logic Synthesis in FPGA-Based design of Image and Signal Processing Systems, chapter in book Verma, B. and Blumenstein, M. (eds.) (2008). Pattern Recognition Technologies and Applications: Recent Advances, IGI Global Press, USA. (In Press). 6. 6. B. J. Falkowski. Phase watermarking algorithm using hybrid multi-polarity Hadamard transform. Journal of Mathematical Imaging and Vision, 30(1): 13 21, January 2008. Conferences 7. 7. Falkowski B., Łuba T.: Analysis of Biomedical Images with Intracellular Fluorescent Dye Concentrations of Living cells. First Singaporean-French Biomedical Imaging Workshop, pp. 64-65, 12-13 October 2006, Biopolis, Singapore. 8. 8. G. Borowik, B. J. Falkowski, and T. Łuba. Cost-efficient synthesis for sequential circuits implemented using embedded memory blocks of FPGA’s. In Proceedings of the 2007 IEEE Workshop on Design and Diagnostics of Electronic Circuits and Systems, pages 99 104, Krakow, Poland, April 2007. 9. 9. M. Rawski, B. J. Falkowski, and T. Łuba. Decomposition-based synthesis in implementation of digital filters for wavelet transform application targeted FPGA devices. In Proceedings of the 2007 IEEE Instrumentation and Measurement Technology Conference, CD publication, Warsaw, Poland, May 2007. 10. 10. B. J. Falkowski, C. C. Lozano, and T. Łuba. Efficient algorithm for calculation of quaternary fixed polarity arithmetic expansions. In Proceedings of the 37th IEEE International Symposium on Multiple-Valued Logic, CD Publication, Oslo, Norway, May 2007. 11. 11. B. J. Falkowski, C. C. Lozano, and T. Łuba. New fastest linearly independent transforms over GF(3). In Proceedings of the 37th IEEE International Symposium on Multiple-Valued Logic, CD Publication, Oslo, Norway, May 2007. 12. 12. P. Tomaszewicz, M. Nowicka, B. J. Falkowski, and T. Łuba. Logic synthesis importance in FPGA-based designing of image signal processing systems. In Proceedings of the 14th IEEE International Conference on Mixed Design of Integrated Circuits and Systems, pages 135 140, Ciechocinek, Poland, June 2007. 13. 13. Rawski M., Wojtyński M., Wojciechowski T., Majkowski P.: Distributed Arithmetic Based Implementation of Fourier Transform Targeted at FPGA Architectures, In Proceedings of the 14th IEEE International Conference on Mixed Design of Integrated Circuits and Systems, pp. 152-156, Ciechocinek, Poland 21-23 June, 2007. 14. 14. B. J. Falkowski, T. Sasao, and T. Łuba. Programmable hardware implementation based on four Walsh sequences. In Proceedings of the 14th IEEE International Conference on Mixed Design of Integrated Circuits and Systems, pages 141 146, Ciechocinek, Poland, June 2007. 15. 15. B. J. Falkowski, C. C. Lozano, and T. Łuba. Properties and relations of new fastest linearly independent arithmetic transforms for ternary functions. In Proceedings of the 15th European Signal Processing Conference, pages 2129 2133, Poznan, Poland, September 2007. 16. 16. Rawski M., Tomaszewicz P., Falkowski B.J., Łuba T.: Application of Advanced Logic Synthesis in FPGA-based Implementations of Digital Filters, DASIP 2007 - Design & Architectures for Signal and Image Processing, pp. 1-8, Grenoble, France, 27-20 November, 2007. 17. 17. Falkowski B., Lozano C., Łuba T.: Properties and Relations of New Fastest Linearly Independent Arithmetic Transforms for Ternary Functions, Proceedings of the 15th European Signal Processing Conference, EUSIPCO 2007, Poznań, Poland, 3-4 September, 2007. 18. 18. M. Rawski, B. Falkowski, T. Łuba. Logic Synthesis Method for FPGAs with Embedded Memory Blocks, IEEE International Symposium on circuits and systems, Seattle, May 2008. 19. 19. C. C. Lozano, B. J. Falkowski, and T. Luba. Properties and computational algorithm for fastest Quaternary Linearly Independent Transforms. 38 th ISMVL, May 22-23, Dallas 2008. 20. 20. B. Falkowski, C. Lozano, T. Łuba. Reliability Analysis Based on Arithmetic and Boolean Representations. MIXDES Poznań, 19 – 21 June 2008. 21. 21. C. Lozano, B. Falkowski, T. Łuba. Ternary Polynomial Expansions Based on Generalized Fastest Linearly Independent Arithmetic Transforms.. MIXDES Poznań, 19 – 21 June 2008. 21 Publikacje grantu [16] Rawski M., Tomaszewicz P., Falkowski B.J., Łuba T.: Application of Advanced Logic Synthesis in FPGA-based Implementations of Digital Filters, DASIP 2007 - Design & Architectures for Signal and Image Processing, pp. 1-8, Grenoble, France, 27-20 November, 2007.
22
22 Heterogeniczne struktury FPGA M512 M4K 4Kx1 2Kx2 1Kx4 512x8 Różnorodność konfiguracji wbudowanych pamięci znacznie utrudnia proces syntezy
23
G H X Y X1X1 X2X2 H2H1 X Y1Y1 Y2Y2 X3X3 X4X4 DekompozycjaszeregowaDekompozycjarównoległa Interaktywny tryb pracy dekompozycji zrównoważonej Wygodny do syntezy układów cyfrowych w strukturach FPGA z wbudowanymi pamięciami Łuba T., Selvaraj H., Nowicka M. and Kraśniewski A.: Balanced multilevel decomposition and its applications in FPGA-based synthesis, in Saucier G., Mignotte A. (ed.), Logic and Architecture Synthesis, Chapman&Hall, 1995.
24
Synteza logiczna ukierunkowana na implementację układów w strukturach programowalnych Politechnika Śląska – prof. E. Hrynkiewicz. Synteza funkcji logicznych realizowanych w strukturach FPGA Politechnika Śląska - prof. D. Kania Prace Politechniki Śląskiej …
25
Heterogeniczne struktury FPGA… Elementy logiczne 256 X 8 256 X 16 128 X 16 128 X 32 Wbudowane bloki pamięci Metoda dekompozycji zrównoważonej nie ma konkurencji…
26
M. Rawski, B. Falkowski, T. Łuba. Logic Synthesis Method for FPGAs with Embedded Memory Blocks, IEEE International Symposium on Circuits and Systems, Seattle, May 2008. Nowe wersje dekompozycji dla struktur FPGA z pamięciami Rawski M., Borowik G., Łuba T., Tomaszewicz P., Falkowski B.J.: Logic Synthesis Strategy for FPGAs with Embedded Memory Blocks, Proceedings of the 16th International Conference MIXED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS MIXDES 2009, pp. 296-301, Łódź, Poland 25-27 June, 2009.
27
Filtry Daubechies 9/7 Synteza filtrów falkowych w strukturach FPGA z pamięciami Register Data in Data out MAC unit Filtry falkowe są stosowane w standardzie kompresji obrazów JPEG2000
28
(6,1) (4,2) (7,16) (7,3) (7,4) (4,3) ROM (6,8) ROM (4,2) (4,2) (6,3) (6,3) (4,2) (4,3) (4,2) (4,2) ROM (6,8) (7,4) ROM Dekompozycja układu DA filtru falkowego typu ahp (7,15) (7,8) (4,1) (3,1) (7,7) (5,2) (6,1) (4,2) (4,1) FPGA EMB EMB 2×M512, 14LC
29
Porównanie z systemem Quartus Typ filtra Rząd LCFFROMfmax ahp Quartus72041494xM512159.44 ahp dec72081533xM512160.75 alp Quartus9240182 2xM4K129.75 alp dec92601831xM4K136.20 slp Quartus72081505xM512150.72 slp dec72221512xM512160.41 shp Quartus92361817xM512, 1xM4K133.51 shp dec92461811xM4K139.66
30
FPGA EMB Porównanie całkowitej powierzchni LC ROM Powierzchnia 1 LC Brian Dipert, Counting on Gate Counts,… EDN Magazine, August 3, 1998 Powierzchnia 3 bitów pamięci =
31
Mnożenie z akumulacją ][][, 1 0 nxncy N n xc Register Data in Data out MAC unit Loop algorithm Inne zastosowania DA i dekompozycji Multiply and Accumulate: Transformaty: DFT, FFT
32
Wyniki eksperymentów Wykorzystanie sprzętu Zegar [Mhz] P rzepustowość [Mbit/s] [#LC][#DSP] FFT_LC4723 (14%)–43,51522,12 FFT_DSP1554 (5%)70 (100%)48,93587,16 DFT_DA7222 (22%)–74,36892,32 Uzyskanie największej przepustowości jest możliwe wyłącznie przy zastosowaniu zaawansowanych procedur syntezy logicznej
33
Bliżej telekomunikacji… Nadajnik OFDM Standardu WiMAX Zastosowanie metod syntezy logicznej do realizacji transformat DFT, FFT Źródło: Pawłowski, M. Matusz, J. Woźniak: WiMAX – nowy standard szerokopasmowych sieci bezprzewodowych (1) i (2). PTiWT, z. 7 i 11, 2005.
34
Niezbędnym wyposażeniem układów cyfrowych (w tym układów DSP) jest blok sterowania układem wykonawczym (tzw. ścieżka danych). Zastosowanie metod dekompozycji w realizacjach układów sterowania Układsterujący(Automat) Dane wyjściowe Danewejściowe Sygnałysterujące Stan części operacyjnej Układ wykonawczy (Datapath) 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Dotychczasowe metody układów sterujących okazują się mało skuteczne dla najnowszych struktur programowalnych, a w szczególności dla układów FPGA z wbudowanymi pamięciami.
35
XFQ Pamięć mikroprogramu (ROM) Rejestr adresowy q x x + q y Układ sekwencyjny z pamięcią ROM Niestety taka realizacja wymaga pamięci o dużej pojemności 35 FPGA EMB EMB
36
X FQ Pamięć mikroprogramu (ROM) Rejestr Modyfikator adresu qxa b c < b (a + c) < (x + q) y XU W V G H Y Dekompozycja funkcjonalna Algebra podziałów 36 Układ sekwencyjny z modyfikacją adresu Rejestr między MA i PM nie przeszkadza w obliczaniu dekompozycji
37
Wyniki eksperymentów Stratix (EP1S10F484C5) Benchmark QUARTUS IIAM/ROM (nowa metoda) Encoding (bits) LUT [LC] [LC/bit] [LC/EMB] (Encoding bits) cse Auto (16)112 2 / 5632 77 / 1 M512 (4), 8 / 1 M4K (7) Minimal (4)90 mark1 Auto (15)32 2 / 51208 / 1 M4K (6) Minimal (4)38 s1 Auto (20)168 96 / 5632 129 / 1 M512 (5), 71 / 1 M4K (7) Minimal (5)152 tbk Auto (32)902 333 / 4096 261 / 1 M512 (5), 21 / 1 M4K (5) Minimal (5)959
38
tbk: 16 384 bits lub 959 LCs tbk: 4096 bits oraz 21 LCs Realizacja układu TBK Realizacja… bez dekompozycji …z dekompozycją
39
39 Hierocrypt – 3 (NESSIE) TOSHIBA Corp. 27000 komórek P = 52,6 Mbit/s WAT + (DEMAIN) WAT + (DEMAIN) 9758 komórek / 48kbit EAB P = 352 Mbit/s Zastosowanie metod dekompozycji w realizacjach układów kryptograficznych Rogawski M.: Analysis of implementation of HIEROCRYPT-3 algorithm (and its comparison to CAMELLIA algorithm) using Altera devices. Strona Międzynarodowego Stowarzyszenia Badań Kryptologicznych (IACR), artykuł nr. 2003/258 (http://eprint.iacr.org).
40
Podsumowanie… Realizacje różnych układów cyfrowego przetwarzania sygnałów i informacji w strukturach programowalnych, z zastosowaniem nowoczesnych metod syntezy logicznej, to – ze względu na dynamikę rozwoju technologii – szanse, które w sektorze elektroniki i telekomunikacji w Polsce nie powinny być zlekceważone
41
Wnioski… Poziom nauczania techniki cyfrowej w Polsce nie jest dostosowany do najnowszych technologii Potrzebne jest reforma programów nauczania techniki cyfrowej, uwzględniająca nowe metody syntezy logicznej Referat T. Łuba pt.: Nauczanie techniki cyfrowej w zreformowanym programie studiów makrokierunku Elektronika, Informatyka i Telekomunikacja, Biuletyn WEiTI PW, nr 3/4 2010
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.