Đề tài Thiết kế máy thu số trên công nghệ FPGA

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành : Điện tử viễn thông Nhiệm vụ của đồ án tốt nghiệp 1.Tên đề tài: “Thiết kế máy thu số trên công nghệ FPGA” 2.Các số liệu ban đầu Dựa trên nhiệm vụ được giao và các số liệu ban đầu 3. Nội dung thuyết minh: Chương 1: Tổng quan về vô tuyến định nghĩa bằng phần mềm. Chương 2: Thiết kế SDR trên cơ sở FPGA. Chương 3: Máy thu số. 4. Số lượng nội dung các bản vẽ

doc71 trang | Chia sẻ: lvcdongnoi | Ngày: 15/06/2013 | Lượt xem: 1547 | Lượt tải: 7download
Bạn đang xem nội dung tài liệu Đề tài Thiết kế máy thu số trên công nghệ FPGA, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
iÖn lçi vµ söa lçi. Trong c¸c v« tuyÕn phÇn mÒm qu©n sù, mËt hãa vµ c¸c chøc n¨ng b¶o mËt th«ng tin kh¸c lµ c¸c vÊn ®Ò thiÕt kÕ nhiÒu thö th¸ch. 1.3.4 Qu¶n lý cÊu h×nh l¹i vµ tµi nguyªn Kh¶ n¨ng cÊu h×nh l¹i, lµ mét phÇn tÊt yÕu cña kh¸i niÖm SDR, nã lµ vÊn ®Ò réng vµ phøc t¹p. ViÖc cÊu h×nh cã thÓ ®­îc thùc hiÖn ë nhiÒu møc. ë giai ®o¹n khëi t¹o, c¸c v« tuyÕn phÇn mÒm ®­îc ®Þnh nghÜa nh­ c¸c v« tuyÕn cã chøc n¨ng giao tiÕp kh«ng gian ®­îc cÊu h×nh l¹i b»ng phÇn mÒm. §Þnh nghÜa míi h¬n lµ mét v« tuyÕn mµ chøc n¨ng cña nã ®­îc cÊu h×nh l¹i b»ng phÇn mÒm. ViÖc cÊu h×nh l¹i cã thÓ ®­îc thùc hiÖn b»ng phÇn mÒm t¶i xuèng qua kh«ng gian hoÆc sö dông c¸c kÕt nèi d©y dÉn. Chøc n¨ng cÊu h×nh l¹i cã thÓ ®Þnh vÞ ë bÊt kú líp giao thøc nµo. Kh¶ n¨ng cÊu h×nh l¹i ë líp thÊp cho phÐp chuyÓn vïng hoÆc b¾c cÇu trong khi ë líp cao nhÊt, cÊu h×nh l¹i cho phÐp c¸c øng dông vµ dÞch vô míi cã kh¶ n¨ng ¸p dông. Trong tr­êng hîp ®¬n gi¶n nhÊt, c¸c yªu cÇu thiÕt lËp bëi kh¶ n¨ng cÊu h×nh l¹i cña SDR chØ liªn quan ®Õn thiÕt bÞ cuèi ng­êi dïng. Trong tr­êng hîp phøc t¹p h¬n, hÖ thèng t×m mét cÊu h×nh tèi ­u dùa trªn ®iÒu kiÖn, c¸c dÞch vô hái ®¸p vµ dung l­îng ng­êi dïng trong m¹ng. V× vËy, viÖc qu¶n lý kh¶ n¨ng cÊu h×nh l¹i m¹ng vµ c¸c giao thøc cã kh¶ n¨ng thÝch nghi lµ cÇn thiÕt. Yªu cÇu cña c¸c luång d÷ liÖu dÞch vô theo ®¬n ®Æt hµng víi c¸c tham sè chÊt l­îng dÞch vô (QoS) lµ lý do chÝnh yªu cÇu c¸c giao thøc cã thÓ tham sè hãa. ViÖc cung cÊp mÒm dÎo c¸c dÞch vô yªu cÇu qu¶n lý cÊu h×nh l¹i vµ c¸c giao diÖn lËp tr×nh øng dông më. 1.4 øng dông cña SDR Víi kü thuËt SDR, c¸c nhµ khai th¸c di ®éng cã thÓ n©ng cÊp hÖ thèng m¹ng ®Õn phiªn b¶n míi nhÊt mµ kh«ng cÇn thay ®æi phÇn cøng, do ®ã gi¶m tæng chi phÝ. Nh÷ng dÞch vô míi ®­îc cung cÊp cho c¸c líp ng­êi sö dông kh¸c nhau trªn nÒn mét h¹ tÇng phÇn cøng chung. Do ®ã, triÓn khai SDR sÏ gióp c¸c nhµ khai th¸c chuyÓn tõ “nhµ cung cÊp m¹ng” thµnh “nhµ cung cÊp dÞch vô”, tõ ®ã t¹o ra c¸c nguån doanh thu míi. Ngoµi ra, thiÕt bÞ SDR cßn gióp c¶i thiÖn thêi gian ®­a s¶n phÈm ra th­¬ng m¹i, lµm gi¶m ®¸ng kÓ rñi ro ®Çu t­ cña nhµ khai th¸c. Kh«ng chØ vËy, SDR cßn mang l¹i nhiÒu lîi Ých cho ng­êi sö dông ®Çu cuèi. Nã cho phÐp kh¸ch hµng cã thÓ thay ®æi vµ truy nhËp c¸c tÝnh n¨ng còng nh­ c¸c dÞch vô míi ®a d¹ng dÔ dµng. C¸c thuª bao cã thÓ sö dông ®Çu cuèi SDR ®Ó chuyÓn vïng dÔ dµng gi÷a c¸c nhµ khai th¸c vµ tËn h­ëng sù di ®éng thùc sù. Kü thuËt SDR lµm t¨ng vßng ®êi cña viÖc ®Çu t­ thiÕt bÞ ®Çu cuèi vµ ®¶m b¶o kh«ng bÞ lçi thêi. Trong th«ng tin qu©n sù, øng dông SDR kh«ng nh÷ng ®¸p øng tèt trong c¸c ®iÒu kiÖn lµm viÖc kh¾c nghiÖt, ®iÒu kiÖn m«i tr­êng truyÒn sãng phøc t¹p mµ cßn mang l¹i nh÷ng tÝnh n¨ng quan träng trong viÖc b¶o mËt th«ng tin, dÔ dµng thay ®æi chÕ ®é ho¹t ®éng: tÝn hiÖu c«ng t¸c, d¶i tÇn, d¹ng ®iÒu chÕ, kiÓu m· hãa tiÕng nãi, tèc ®é d÷ liÖu … mµ kh«ng cÇn l¾p ®Æt thay ®æi nhiÒu vÒ phÇn cøng. Khi muèn thay ®æi chÕ ®é c«ng t¸c chØ cÇn thay ®æi trong phÇn mÒm ®em l¹i hiÖu qu¶ cho khung phÇn cøng cã s½n. HÖ thèng DSR cho phÐp thiÕt lËp c¸c hÖ thèng th«ng tin quy m« lín, trong ®ã bao gåm nhiÒu lo¹i ph­¬ng tiÖn th«ng tin cña qu©n binh chñng kh¸c nhau, cho c¸c d¹ng th«ng tin kh¸c nhau. C¸c ­u ®iÓm næi bËt cña hÖ thèng SDR trong th«ng tin qu©n sù lµ tÝnh an toµn cña th«ng tin, m· hãa b¶o mËt, tÝch hîp nhiÒu chøc n¨ng vµ chÕ ®é c«ng t¸c, sö dông linh ho¹t, kh¶ n¨ng kÕt nèi m¸y tÝnh vµ c¸c m¹ng th«ng tin liªn l¹c kh¸c theo c¸c chuÈn míi cña thÕ giíi. KÕt luËn ch­¬ng 1 Víi sù ph¸t triÓn cña c¸c bé xö lý tÝn hiÖu sè DSP, c¸c c«ng cô thiÕt kÕ lËp tr×nh trªn c¸c ng«n ng÷ bËc cao cho phÐp më ra sù ph¸t triÓn cña c¸c hÖ thèng SDR thùc tÕ. Kh¶ n¨ng xö lý, tèc ®é cña hÖ thèng ®­îc n©ng lªn trong khi gi¶m nhá rÊt nhiÒu kÝch th­íc vµ khèi l­îng cña thiÕt bÞ do c¸c linh kiÖn cã ®é tÝch hîp cao. §a sè c¸c phÇn xö lý tÝn hiÖu cã thÓ ®­îc x©y dùng trªn mét chip FPGA. Sù tÝch hîp cao gióp mang l¹i hiÖu qu¶ thiÕt kÕ cao h¬n, nhanh h¬n. Lµm cho thiÕt bÞ tuy thªm c¸c chøc n¨ng míi nh­ng l¹i cã kÝch th­íc nhá gän, linh ho¹t. T¨ng kh¶ n¨ng thay thÕ vµ l¾p lÉn nhau. §iÒu ®ã mang l¹i c¶ hiÖu qu¶ kinh tÕ vµ hiÖu qu¶ sö dông cho thiÕt bÞ v« tuyÕn cÊu h×nh mÒm. Ch­¬ng 2 thiÕt kÕ SDR trªn c¬ së FPGA Ch­¬ng nµy tËp trung tr×nh bµy vÒ c«ng nghÖ FPGA vµ qu¸ tr×nh thiÕt kÕ víi FPGA. §©y lµ c«ng nghÖ tiªn tiÕn ®· ®­îc nghiªn cøu rÊt nhiÒu vµ ®­îc øng dông réng r·i trªn thÕ giíi. 2.1 FPGA lµ g×? FPGA lµ viÕt t¾t cña d·y cæng kh¶ tr×nh (Field-Programmable Gate Array), ®©y lµ lo¹i IC trong ®ã cho phÐp ng­êi thiÕt kÕ lËp tr×nh thay ®æi c¸c thiÕt kÕ cña m×nh. FPGA xuÊt hiÖn nh­ mét gi¶i ph¸p c¬ b¶n cho vÊn ®Ò tranh thñ thêi gian ®Ó ®­a ra thÞ tr­êng vµ rñi ro tµi chÝnh ph¶i g¸nh chÞu trong qu¸ tr×nh nghiªn cøu s¶n phÈm cña c«ng nghÖ ®iÖn tö. FPGA lµ lo¹i thiÕt bÞ kh¶ tr×nh (PLD) tiªn tiÕn nhÊt hiÖn nay cña nghµnh c«ng nghÖ chÕ t¹o IC chuyªn biÖt mµ vÉn ®­îc gäi lµ ASIC. 2.2 Qu¸ tr×nh ph¸t triÓn cña c¸c thiÕt bÞ kh¶ tr×nh C¸c thiÕt bÞ lËp tr×nh ®­îc, gäi chung lµ c¸c thiÕt bÞ kh¶ tr×nh, cã vai trß rÊt quan träng trong thiÕt kÕ phÇn cøng sè. Chóng lµ c¸c chip ®a dông cã thÓ ®­îc cÊu h×nh theo nhiÒu c¸ch cho nhiÒu øng dông kh¸c nhau. * Lo¹i ®Çu tiªn cña thiÕt bÞ kh¶ tr×nh ®­îc sö dông réng r·i lµ Programmable read-only Memory-PROM. PROM lµ thiÕt bÞ lËp tr×nh chØ ®­îc mét lÇn gåm mét d·y c¸c « nhí chØ ®äc. PROM cã thÓ thùc hiÖn bÊt kú mét hµm logic theo b¶ng sù thËt nµo ®ã, b»ng c¸ch sö dông c¸c ®­êng ®Þa chØ nh­ c¸c ngâ nhËp vµo vµ ngâ xuÊt ®ù¬c x¸c ®Þnh néi dung c¸c bit nhí. Cã hai lo¹i PROM c¬ b¶n lµ Mask-Programmable vµ Field-Programm -able. + Mask-Programmable lµ lo¹i thiÕt bÞ ®­îc lËp tr×nh bëi nhµ s¶n xuÊt. C¸c chip nµy th­êng ®­îc s¶n xuÊt lµ c¸c chip logic tèc ®é cao v× c¸c kÕt nèi bªn trong thiÕt bÞ ®­îc thùc hiÖn b»ng phÇn cøng ngay tõ khi s¶n xuÊt. + Field-Programmable lµ thiÕt bÞ ®­îc lËp tr×nh bëi ng­êi dïng. C¸c kÕt nèi bªn trong cña Field-Programmable lu«n cÇn ®Õn mét sè chuyÓn m¹ch lËp tr×nh ®­îc (cÇu ch×, transistor truyÒn…) v× vËy tèc ®é truyÒn chËm h¬n cña thiÕt bÞ nèi cøng (Mask-Programmable). Tuy nhiªn nã cã nhiÒu ­u ®iÓm nh­: - C¸c chip Field-Programmable cã thÓ lËp tr×nh trong thêi gian ng¾n (kho¶ng vµi phót hay vµi giê ®ång hå) cßn c¸c chip Mask-Programmable khi s¶n xuÊt ph¶i thùc hiÖn trong thêi gian dµi (hµng tuÇn hay hµng th¸ng). - C¸c chip Field-Programmable rÎ h¬n nhiÒu so víi Mask-Programmable khi s¶n xuÊt víi sè l­îng nhá. Hai biÕn thÓ cña PROM lµ EPROM (Eraseable Programmable Read Only Memory) vµ EEPROM (Electrically Eraseable Programmable Read Only Memory) chóng ®Òu cã chung ­u ®iÓm lµ cã kh¶ n¨ng xo¸ vµ lËp tr×nh l¹i nhiÒu lÇn. * TiÕp ®Õn lµ c¸c thiÕt bÞ PLD (Programmable Logic Device) chóng th«ng th­êng cã cÊu t¹o gåm mét d·y c¸c cæng AND ®­îc nèi víi mét d·y c¸c cæng OR. Lo¹i c¬ b¶n cña PLD lµ PAL (Programmable Array Logic), PAL gåm mét khèi c¸c cæng AND lËp tr×nh ®­îc nèi ®Õn c¸c khèi cæng OR cè ®Þnh. Mét lo¹i n÷a cña PLD linh ho¹t h¬n PAL lµ PLA (Programmable Logic Array). PLA còng cã cÊu tróc gièng PAL nh­ng c¸c kÕt nèi kh¶ tr×nh. Trong PLA còng cã hai lo¹i lµ Mask-Programmable vµ Field-Programmable. C¶ hai lo¹i PLD trªn cho phÐp thùc hiÖn c¸c m¹ch logic cã tèc ®é cao tuy nhiªn cÊu tróc ®¬n gi¶n cña chóng chØ cho phÐp thùc hiÖn ®­îc c¸c m¹ch logic cì nhá. * Lo¹i thiÕt bÞ kh¶ tr×nh tæng qu¸t nhÊt gåm d·y c¸c phÇn tö rêi r¹c cã thÓ kÕt nèi víi nhau theo m« t¶ cña ng­êi sö dông, ®­îc gäi lµ Mask-Programmable Gate Array (MPGA) chóng cã cÊu tróc c¬ b¶n nhÊt lµ gåm c¸c hµng transistor cã thÓ ®­îc kÕt nèi víi nhau ®Ó thùc hiÖn c¸c m¹ch logic. C¸c kÕt nèi do ng­êi dïng ®Þnh nghÜa nµy cã thÓ trong c¶ hµng vµ c¶ cét. ¦u ®iÓm chÝnh cña MPGA so víi PLD lµ nã cung cÊp c¸c kiÕn tróc tæng qu¸t cho phÐp thùc hiÖn c¸c m¹ch logic lín h¬n. V× cÊu tróc cña chóng cã thÓ më réng lín h¬n cïng víi sè l­îng logic lín h¬n. FPGA ®· kÕt hîp kh¶ n¨ng lËp tr×nh cña PLD vµ kÕt cÊu nèi cã thÓ më réng cña MPGA. Do ®ã c¸c thiÕt bÞ lËp tr×nh lo¹i nµy cã mËt ®é logic cao h¬n. FPGA ®­îc c«ng ty Xilinx giíi thiÖu lÇn ®Çu tiªn vµo n¨m 1985 vµ ®Õn nay ®· cã nhiÒu c«ng ty ph¸t triÓn nh­: Actel, Altera, Plessey, Plus logic, Quick... 2.3 CÊu tróc cña FPGA FPGA lµ m¹ch tÝch hîp chøa nhiÒu (64 ®Õn h¬n 10.000) « logic (logic cell) gièng nhau cã thÓ xem lµ c¸c thµnh phÇn chuÈn. Mçi « logic gi÷ mét hay mét sè chøc n¨ng ®éc lËp. C¸c « gièng nhau ®­îc kÕt nèi bëi mét ma trËn ®­êng dÉn vµ c¸c chuyÓn m¹ch kh¶ tr×nh. Ng­êi thùc hiÖn thiÕt kÕ b»ng c¸c ®Æc tr­ng logic ®¬n cña mçi « vµ lùa chän ®ãng c¸c chuyÓn m¹ch trong ma trËn kÕt nèi. M¶ng cña c¸c « logic vµ kiÓu kÕt nèi lµ kÕt cÊu x©y dùng khèi c¬ b¶n trong m¹ch logic. C¸c thiÕt kÕ phøc t¹p ®­îc t¹o ra b»ng c¸ch kÕt hîp c¸c khèi c¬ b¶n ®Ó t¹o ra c¸c m¹ch ®­îc m« t¶. H×nh 2.1 M« t¶ m« h×nh cña mét FPGA M« h×nh tæng qu¸t cña FPGA gåm mét d·y hai chiÒu c¸c khèi logic (logic block) cã thÓ ®­îc kÕt nèi b»ng c¸c nguån kÕt nèi chung. C¸c nguån kÕt nèi gåm c¸c ®o¹n kÕt nèi (segment) cã thÓ cã chiÒu dµi kh¸c nhau. Bªn trong c¸c kÕt nèi lµ c¸c chuyÓn m¹ch lËp tr×nh ®­îc dïng ®Ó nèi c¸c khèi logic víi c¸c ®o¹n d©y, c¸c khèi vµo/ra hay c¸c ®o¹n d©y víi nhau. M¹ch logic cµi ®Æt trong FPGA b»ng c¸ch ¸nh x¹ logic vµo c¸c logic riªng rÏ vµ sau ®ã nèi c¸c khèi logic cÊu h×nh (Configurable Logic Block-CLB) cÇn thiÕt qua c¸c chuyÓn m¹ch. C¸c khèi CLB cung cÊp c¸c phÇn tö chøc n¨ng víi cÊu tróc sö dông logic. C¸c khèi vµo/ra (Input Out Block-IOB) cung cÊp giao diÖn gi÷a c¸c gãi ch©n vµ c¸c ®­êng tÝn hiÖu bªn trong. Tµi nguyªn kÕt nèi kh¶ tr×nh cung cÊp c¸c bé phËn truyÒn dÉn tíi kÕt nèi ®Çu vµo vµ ®Çu ra cña c¸c CLB vµ c¸c IOB trong m¹ng riªng. VËy cÊu tróc FPGA gåm ba phÇn tö chÝnh: C¸c khèi logic cÊu h×nh (CLB), c¸c khèi vµo/ra (IOB) vµ c¸c kÕt nèi. C¸c khèi logic cÊu h×nh CÊu tróc vµ néi dung cña logic block ®­îc gäi theo kiÕn tróc cña nã. KiÕn tróc cña khèi logic cã thÓ thiÕt kÕ theo nhiÒu c¸ch kh¸c nhau, cã thÓ lµ c¸c cæng AND 2 ngâ nhËp, c¸c bé dån kªnh (Multiplexer) hay c¸c b¶ng tra cøu (Look-up Table). Ngoµi ra cã thÓ chøa c¸c Flip-Flop ®Ó hç trî cho viÖc thùc hiÖn mét c¸ch tuÇn tù. C¸c nguån kÕt nèi (Routes) C¸c nguån kÕt nèi cã cÊu tróc vµ néi dung ®­îc gäi lµ kiÕn tróc ®­êng (Routing Architecture). KiÕn tróc Routing gåm c¸c ®o¹n d©y nèi vµ c¸c chuyÓn m¹ch kh¶ tr×nh. C¸c chuyÓn m¹ch kh¶ tr×nh cã cÊu t¹o kh¸c nhau nh­ pass-transistor, ®­îc ®iÒu khiÓn bëi c¸c cell SRAM, c¸c phÇn tö cÇu ch× nghÞch, EPROM transistor vµ EEROM transitor. Gièng nh­ c¸c khèi logic cã nhiÒu c¸ch kh¸c nhau ®Ó thiÕt kÕ c¸c kiÕn tróc routing. Mét sè FPGA cung cÊp nhiÒu kÕt nèi ®¬n gi¶n gi÷a c¸c khèi logic, mét sè kh¸c cung cÊp Ýt kÕt nèi h¬n nªn routing phøc t¹p h¬n. 2.4 Ph©n lo¹i FPGA Cã nhiÒu lo¹i FPGA cña c¸c nhµ s¶n xuÊt kh¸c nhau, tuy nhiªn chóng cã thÓ chia thµnh 4 lo¹i nh­ h×nh vÏ 2.2. Bao gåm cÊu tróc m¶ng ®èi xøng (Symmetrical Array), cÊu tróc hµng (Row- based), cÊu tróc PLD ph©n cÊp (Hierachical PLD), cÊu tróc ®a cæng (Sea- of-gate). XÐt vÒ mÆt sö dông cã 2 lo¹i linh kiÖn cÊu h×nh cho c¸c kÕt nèi cña FPGA: - Lo¹i SRAM (Static Radom Acces Memory) cã thÓ lËp tr×nh nhiÒu lÇn. - Lo¹i OTP (One-Time Progammable) chØ lËp tr×nh mét lÇn. Hai lo¹i nµy kh¸c nhau ë chç thùc thÞ cña Logic Cell vµ kü thuËt t¹o sù kÕt nèi trong thiÕt bÞ. H×nh 2.2 Bèn lo¹i FPGA ®iÓn h×nh KiÓu hay ®­îc dïng h¬n c¶ lµ kiÓu SRAM v× nã cã thÓ lËp tr×nh ®­îc nhiÒu lÇn. Thùc tÕ th× SRAM FPGA ®­îc n¹p ch­¬ng tr×nh l¹i mçi khi bËt nguån, bëi v× FPGA lo¹i nµy thùc chÊt lµ mét chip nhí theo ý muèn. VËy t¹i sao l¹i ph¶i cÇn mét chip PROM nèi tiÕp hoÆc bé nhí hÖ thèng cïng víi mçi SRAM FPGA. CÊu tróc cña 2 lo¹i ®­îc thÓ hiÖn ë h×nh 2.3 vµ 2.4 sau ®©y: - Lo¹i SRAM cã thÓ lËp tr×nh l¹i: + SRAM x¸c ®Þnh c¸c ®­êng nèi. + SRAM x¸c ®Þnh ®¬n vÞ Logic trong b¶ng tra LUT. H×nh 2.3 CÊu tróc SRAM FPGA (SRAM Logic Cell) - Lo¹i OTP cho phÐp lËp tr×nh mét lÇn: + C¸c ®­êng nèi kh«ng ®­îc phÐp nèi nh­ d¹ng cÇu ch×. + Logic lµ c¸c cæng truyÒn thèng. H×nh 2.4 CÊu tróc OPT FPGA ( OPT Logic Cell) Trong SRAM Logic Cell, thay v× c¸c cæng th«ng th­êng lµ mét b¶ng tra LUT x¸c ®Þnh ®Çu ra dùa vµo c¸c gi¸ trÞ ®Çu vµo. Trong OPT Logic Cell sö dông kÕt nèi gi÷a c¸c ®­êng theo d¹ng nèi ng­îc (Cã nghÜa lµ ng­îc víi cÇu ch×, sù kÕt nèi t¹o ra vµ kh«ng bÞ nãng ch¸y trong suèt thêi gian n¹p ch­¬ng tr×nh) ®Ó t¹o ra c¸c kÕt nèi cè ®Þnh trong chip. H¬n n÷a OPT FPGA kh«ng cÇn SPROM nµo kh¸c, ®iÒu nµy cã nghÜa lµ n¹p ch­¬ng tr×nh vµo th¼ng FPGA. Tuy nhiªn mçi lÇn thay ®æi thiÕt kÕ l¹i ph¶i vøt bá ®i mét con chip. Lo¹i OPT Logic Cell t­¬ng tù nh­ hä PLD víi c¸c cæng vµ flip-flop nh­ D, T hay RS. 2.5 Qu¸ tr×nh thiÕt kÕ c¬ b¶n trªn FPGA Qu¸ tr×nh thiÕt kÕ trªn FPGA sö dông hÖ thèng CAD (Computer Aided Design). H×nh 2.5 biÓu diÔn c¸c b­íc trong hÖ thèng CAD tiªu biÓu ®Ó t¹o ra mét m¹ch FPGA. Tõ trªn h×nh vÏ ta thÊy, ®iÓm b¾t ®Çu cho m¹ch thiÕt kÕ lµ m¹ch logic ban ®Çu. B­íc nµy cÇn mét s¬ ®å biÓu diÔn m¹ch hay mét m« t¶ VHDL hoÆc mét ®Æc t¶ c¸c biÓu thøc Boolean. Tõ c¸c ®Çu vµo nh­ vËy, chóng ta ®­îc chuyÓn thµnh d¹ng chuÈn nh­ lµ c¸c biÓu thøc Boolean. C¸c biÓu thøc Boolean nµy ®­îc xö lý b»ng c«ng cô tèi ­u logic (Rót gän c¸c biÓu thøc), môc ®Ých cña viÖc nµy lµ ®Ó tèi ­u vÒ diÖn tÝch vµ tèc ®é cña m¹ch thiÕt kÕ. Sau khi ®· ®­îc tèi ­u, c¸c biÓu thøc Boolean ®­îc chuyÓn tíi m¹ch logic block cña FPGA th«ng qua ch­¬ng tr×nh ¸nh x¹ c«ng nghÖ (Technology Mapping), bé ¸nh x¹ sÏ tèi thiÓu sè khèi ®­îc dïng vµ gi¶m ®­êng dÉn ®Ó tèi ­u vÒ gi÷ chËm. Sau khi ¸nh x¹ m¹ch vµo c¸c logic block th× cÇn ph¶i quyÕt ®Þnh ®Æt mçi khèi ë ®©u, c«ng viÖc nµy do Placement gi¶i quyÕt. B­íc cuèi cïng trong hÖ thèng CAD lµ nèi kÕt do phÇm mÒm Rounting thùc hiÖn, chóng Ên ®Þnh c¸c ®o¹n d©y FPGA vµ chän c¸c chuyÓn m¹ch cã thÓ lËp tr×nh phï hîp víi c¸c kÕt nèi trong logic block. Sau khi thùc hiÖn xong b­íc nµy, kÕt qu¶ cña CAD sÏ ®­îc n¹p vµo ®¬n vÞ lËp tr×nh t¹o ra chip FPGA cuèi cïng. H×nh 2.5 Qu¸ tr×nh thiÕt kÕ trªn FPGA Sau ®©y ta sÏ ph©n tÝch chi tiÕt tõng giai ®o¹n cña qu¸ tr×nh thiÕt kÕ CAD. 2.5.1 Tèi ­u Logic §©y chÝnh lµ c«ng viÖc söa l¹i cÊu tróc ®Ó gi¶m sù phøc t¹p cña m¹ch ban ®Çu. Trong giai ®o¹n nµy kh«ng chó ý ®Õn kiÓu cña c¸c phÇn tö sÏ ®­îc dïng sau nµy nªn nã cßn ®­îc gäi lµ tèi ­u kh«ng phô thuéc vµo c«ng nghÖ (Technology-Independent). TiÕn hµnh tèi ­u chÝnh lµ lµm gi¶m sù d­ thõa hoÆc lo¹i bá nh÷ng biÓu thøc con chung. M¹ch sau khi ®­îc tèi ­u cã chøc n¨ng t­¬ng ®­¬ng víi m¹ch ban ®Çu. 2.5.2 Ánh x¹ c«ng nghÖ Sau khi tèi ­u Logic, ¸nh x¹ c«ng nghÖ sÏ biÕn ®æi m¹ch nµy thµnh m¹ch cuèi cïng. §iÒu nµy sÏ ®­îc lµm b»ng c¸ch chän lùa tõng phÇn cña m¹ng vµ mçi c¸i sÏ ®­îc thùc hiÖn bëi mét trong nh÷ng phÇn tö cña m¹ch cã s½n vµ x¸c ®Þnh nh÷ng m¹ch nµy sÏ ®­îc nèi víi nhau nh­ thÕ nµo. Sau ®©y lµ 2 ph­¬ng ph¸p ¸nh x¹ c«ng nghÖ chÝnh. a) Ánh x¹ c«ng nghÖ dùa vµo th­ viÖn: Ph­¬ng ph¸p ¸nh x¹ nµy ®· ®­îc tiªu chuÈn hãa, trong nµy lµ tËp c¸c phÇn tö m¹ch cã s½n sÏ ®­îc biÓu diÔn nh­ mét th­ viÖn c¸c hµm vµ x©y dùng tèi ­u sÏ ®­îc chia thµnh 3 vÊn ®Ò: ph©n r· (Decomposition), dung hîp (Matching), lËp phñ (Convering). §Çu tiªn m¹ng ph©n r· ®Ó biÔu diÔn bëi c¸c cæng NAND 2 ®Çu vµo, sù ph©n r· b¶o ®¶m r»ng kh«ng cã nót nµo trong m¹ch lµ qu¸ lín. Sau khi ph©n r·, m¹ng sÏ ®­îc ph©n ho¹ch thµnh mét c©y môc, m¹ch con tèi ­u cho tõng môc vµ cuèi cïng m¹ch che phñ m¹ng ®­îc tËp hîp tõ c¸c m¹ch con. b) ¸nh x¹ c«ng nghÖ dïng b¶ng tra cøu: B¶ng tra cøu (Look-Up Table) lµ c¬ së cña nh÷ng khèi logic trong FPGA. Mét b¶ng gåm K ®Çu vµo lµ mét bé nhí kü thuËt sè mµ cã thÓ thùc hiÖn bÊt kú mét hµm Boolean nµo gåm K biÕn. K ®Çu vµo ®­îc dïng ®Ó ®Þnh vÞ cho 2bit nhí ®­îc l­u tr÷ trong b¶ng sù thËt cña hµm Boolean. Víi b¶ng LUT gåm K ®Çu vµo cã thÓ thùc hiÖn ®­îc 2 hµm boolean kh¸c nhau. Tuy nhiªn th­ viÖn biÓu diÔn b¶ng LUT K ®Çu vµo l¹i kh«ng cÇn tÊt c¶ 2 hµm kh¸c nhau do cã sù ho¸n vÞ c¸c ®Çu vµo, ®¶o ng­îc c¸c cæng vµo vµ cæng ra vµ nh­ vËy sÏ gi¶m tèi thiÓu sè l­îng hµm trong th­ viÖn. 2.5.3 S¾p ®Æt c¸c phÇn tö (Placement) Giai ®o¹n nµy cña thiÕt kÕ gåm c¸c c«ng viÖc chÝnh nh­ sau: Ph©n chia hÖ thèng (System Partitioning): Mét hÖ thèng vi ®iÖn tö bao gåm nhiÒu khèi chøc n¨ng, nÕu mét khèi chøc n¨ng qu¸ lín th× chóng ta ph¶i thùc hiÖn viÖc t¸ch hoÆc ph©n chia chøc n¨ng cña khèi ®ã ra lµm c¸c khèi nhá h¬n theo môc ®Ých vµ ®Þnh h­íng mµ chóng ta cÇn chØ ®Þnh. a) Lªn s¬ ®å mÆt b»ng, bè trÝ c¸c khèi (Floorplanning): Sau khi ph©n chia hÖ thèng xong sÏ thùc hiÖn viÖc lªn s¬ ®å mÆt b»ng, bè trÝ c¸c khèi. Floorplanning thùc hiÖn c¸c c«ng viÖc nh­ tèi thiÓu hãa ®é dµi kÕt nèi vµ trÔ tÝn hiÖu gi÷a c¸c khèi, s¾p ®Æt c¸c khèi ®· cè ®Þnh vµ ®Æt l¹i c¸c khèi di ®éng ®­îc thùc hiÖn tr­íc Placement, c«ng viÖc s¾p ®Æt, bè trÝ c¸c phÇn tö logic trªn tõng khèi, tæ chøc c¸c vïng kÕt nèi gi÷a c¸c khèi, ph©n phèi mÆt b»ng cho nguån vµ c¸c ®­êng vµo ra... b) S¾p xÕp c¸c phÇn tö (Placement): Placement lµ b­íc tiÕp theo cña Floorplanning, nã thùc hiÖn viÖc s¾p ®Æt c¸c phÇn tö logic vµo mét khèi di ®éng...®©y lµ b­íc quan träng trong thiÕt kÕ m¹ch vµ rÊt phøc t¹p, nÕu Placement kh«ng tèt sÏ dÉn ®Õn viÖc chiÕm diÖn tÝch lín vµ gi¶m tèc ®é thùc thi, nhiÒu khi cßn dÉn tíi kh¶ n¨ng kh«ng Rounting ®­îc. RÊt may lµ c«ng viÖc nµy ®­îc thùc hiÖn hoµn toµn tù ®éng. Placement, System Partitioning vµ Floorplanning cã thÓ hiÓu chung lµ ph©n chia hÖ thèng trªn FPGA - tøc lµ lªn s¬ ®å mÆt b»ng, bè trÝ c¸c khèi logic, vµ ta cã thÓ gäi chung lµ Placement. c) Môc tiªu vµ ®èi t­îng cña Placement: Môc tiªu chÝnh cña mét c«ng cô placement (S¾p ®Æt bè trÝ c¸c phÇn tö logic trªn tõng khèi) lµ s¾p ®Æt tÊt c¶ c¸c phÇn tö logic trong cïng c¸c khèi di ®éng trªn mét chip. VÒ lý t­ëng mµ nãi, ®èi t­ëng cña placement lµ: - B¶o ®¶m c«ng cô ®Þnh tuyÕn cã thÓ hoµn chØnh b­íc ®Þnh tuyÕn. - Tèi thiÓu ho¸ tÊt c¶ c¸c kho¶ng trÔ trªn ®­êng kÕt nèi. - Lµm cho mËt ®é cña chip cµng cao cµng tèt. - Tèi thiÓu ho¸ tiªu thô nguån. - Tèi thiÓu ho¸ sù xuyªn nhiÔu gi÷a c¸c tÝn hiÖu. C¸c ®èi t­îng ®ã rÊt khã ®Ó ®Þnh nghÜa theo c¸ch gi¶i quyÕt b»ng thuËt to¸n vµ thËm chÝ trong thùc tÕ rÊt khã gÆp. C¸c c«ng cô Placement hiÖn nay th­êng sö dông nhiÒu ®Æc ®iÓm vµ c¸c tiªu chuÈn riªng. d) G¸n ch©n (Pin Assignmen): Môc ®Ých cña viÖc g¸n ch©n lµ ®Þnh nghÜa tÝn hiÖu mµ mçi ch©n sÏ nhËn ®­îc. ViÖc g¸n ch©n cã thÓ thùc hiÖn ®­îc trong qu¸ tr×nh Placement hoÆc sau qu¸ tr×nh nµy. NÕu c¸c block kh«ng ®­îc thiÕt kÕ th× phÐp g¸n tèt còng c¶i tiÕn ®­îc Placement, nÕu c¸c block ®· ®­îc thiÕt kÕ th× Pin Assignmen cã thÓ thay ®æi mét vµi ch©n nhê chøc n¨ng t­¬ng ®­¬ng. 2.5.4 §Þnh tuyÕn trªn FPGA (Rounting) Rounting lµ c«ng viÖc cuèi cïng trong qu¸ tr×nh thiÕt kÕ, sau khi ta ®· s¾p ®Æt vµ bè trÝ xong c¸c phÇn tö logic trªn c¸c khèi di ®éng th× ®©y chÝnh lµ viÖc kÕt nèi b»ng c¸ch ®Þnh tuyÕn cho chip ®ã. ViÖc ®Þnh tuyÕn gåm 2 b­íc: ®Þnh tuyÕn tæng thÓ vµ ®Þnh tuyÕn chi tiÕt. §Þnh tuyÕn tæng thÓ ®­îc thùc hiÖn tr­íc, sau ®ã c¸c ®Þnh tuyÕn chi tiÕt thùc hiÖn theo ®Þnh h­íng chung cña ®Þnh tuyÕn tæng thÓ ®· ®­a ra. §Þnh tuyÕn tæng thÓ lªn kÕ ho¹ch ®i d©y b»ng c¸ch t×m ra c¸c kªnh sÏ ®­îc sö dông cho môc ®Ých g×, cho bé phËn nµo. Cã nhiÒu kiÓu ®Þnh tuyÕn tæng thÓ ®èi víi c¸c lo¹i FPGA, tuy nhiªn c¸c thuËt to¸n to¸n t×m ®­êng ng¾n nhÊt th× t­¬ng tù nhau. Cã hai ph­¬ng ph¸p chÝnh cho ®Þnh tuyÕn tæng thÓ lµ: Mét ®­êng chÝnh t¹i mét thêi ®iÓm, hoÆc tÊt c¶ c¸c ®­êng cïng mét lÇn. Cïng víi sù cã mÆt cña gi¶n ®å thêi gian ®Þnh tuyÕn c¸c ®èi t­îng, vÊn ®Ò ®Þnh tuyÕn trë nªn khã h¬n vµ yªu cÇu cã sù hiÓu biÕt vÒ sù kh¸c nhau gi÷a viÖc t×m ®­êng ng¾n nhÊt vµ t×m ®­êng víi ®é trÔ nhá nhÊt. C¸c kiÓu ®Þnh tuyÕn chi tiÕt kh¸c nhau gåm cã ®Þnh tuyÕn kªnh vµ ®Þnh tuyÕn dùa trªn vïng hoÆc ma trËn. §Þnh tuyÕn chi tiÕt víi 2 líp kim lo¹i lµ vÊn ®Ò ®­îc ®Ò cËp ®Õn nhiÒu nhÊt. C¸c vÊn ®Ò chÝnh cña ®Þnh tuyÕn lµ: - §Þnh tuyÕn ®­îc ph©n thµnh ®Þnh tuyÕn tæng thÓ vµ chi tiÕt. - C¸c thuËt to¸n ®Þnh tuyÕn ph¶i phï hîp víi c¸c thuËt to¸n placement. - §Þnh tuyÕn kh«ng thÓ hoµn thµnh nÕu kh«ng ®i d©y ®­îc. - C¸c ®­êng nguån vµ xung nhÞp ®­îc ®iÒu khiÓn trong tr­êng hîp ®Æc biÖt. - §é réng c¸c ®­êng nguån vµ xung nhÞp ®ång bé ®­îc thiÕt lËp b»ng tay. 2.4.5 T¶i n¹p ch­¬ng tr×nh §©y lµ kh©u t¹o ra s¶n phÈm cña thiÕt kÕ. T¶i ch­¬ng tr×nh nh×n chung ®­îc xem nh­ lµ t¶i th«ng tin xuèng thiÕt bÞ dÔ biÕn ®æi nh­ SRAM FPGA. Th«ng tin cÊu h×nh cña thiÕt bÞ ®­îc n¹p vµo trong bé nhí cña thiÕt bÞ. Luång c¸c bit mµ nã ®­îc truyÒn ®i cã chøa tÊt c¶ c¸c th«ng tin ®Þnh nghÜa logic vµ c¸c ®­êng nèi cña thiÕt kÕ vµ th«ng tin nµy kh¸c nhau ®èi víi thiÕt kÕ kh¸c nhau. C¸c thiÕt bÞ SRAM mÊt ®i cÊu h×nh cña chóng khi mÊt nguån v× vËy c¸c luång bit cÇn ph¶i cÊt ë ®©u ®ã ®Ó gi¶i quyÕt bµi to¸n. Mét n¬i th­êng ®­îc dïng ®Ó cÊt th«ng tin cÊu h×nh thiÕt bÞ, ®ã lµ PROM nèi tiÕp. §©y lµ thµnh phÇn kÕt hîp víi phÇn cøng mµ nã nèi tõ m¸y tÝnh tíi bo m¹ch mµ bo m¹ch nµy cã chøa thiÕt bÞ ®Ých. N¹p ch­¬ng tr×nh ®­îc dïng lËp ch­¬ng tr×nh cho tÊt c¶ c¸c thiÕt bÞ logic cã thÓ lËp tr×nh ®­îc kh«ng bÞ thay ®æi, ch¼ng h¹n nh­ PROM nèi tiÕp. ViÖc n¹p ch­¬ng tr×nh thùc hiÖn gièng chøc n¨ng nh­ t¶i ch­¬ng tr×nh, riªng c¸c th«ng tin vÒ cÊu h×nh vÉn cßn sau khi mÊt ®iÖn. 2.6 C¸c øng dông cña FPGA FPGA lµ thÕ hÖ sau cña IC kh¶ tr×nh nªn chóng cã thÓ øng dông trong hÇu hÕt c¸c øng dông cña hiÖn ®ang dïng MPGA, PLD vµ c¸c m¹ch tÝch hîp lo¹i nhá (SSI). a.C¸c m¹ch tÝch hîp lµ øng dông ®Æc biÖt FPGA lµ thiÕt bÞ tæng qu¸t nhÊt ®Ó thùc hiÖn c¸c m¹ch logic sè. Chóng ®Æc biÖt thÝch hîp cho c¸c m¹ch tÝch hîp chuyªn dông ®Æc biÖt (ASIC) nh­ bé céng, bé ®iÒu khiÓn logic Flip-Flop... b. ThiÕt kÕ m¹ch ngÉu nhiªn M¹ch logic ngÉu nhiªn th­êng ®­îc thùc hiÖn b»ng PAL. NÕu tèc ®é cña m¹ch kh«ng ®ßi hái kh¾t khe (c¸c PAL nhanh h¬n hÇu hÕt c¸c FPGA) th× m¹ch cã thÓ thùc hiÖn b»ng FPGA. HiÖn nay mét FPGA cÇn tõ 10 ®Õn 20 PAL. c. ChÕ t¹o mÉu FPGA rÊt lý t­ëng cho viÖc t¹o mÉu c¸c s¶n phÈm. Gi¸ thµnh thùc hiÖn thÊp vµ thêi gian thùc hiÖn thiÕt kÕ vËt lý ng¾n, cung cÊp c¸c ­u ®iÓm h¬n nhiÒu so víi c¸c ph­¬ng tiÖn truyÒn thèng kh¸c ®Ó chÕ t¹o mÉu phÇn cøng. C¸c mÉu ban ®Çu cã thÓ thùc hiÖn rÊt nhanh vµ nh÷ng thay ®æi sau ®ã ®­îc thùc hiÖn rÊt nhanh vµ Ýt tèn kÐm. d. M¸y tÝnh dùa trªn FPGA Mét lo¹i m¸y tÝnh dùa trªn FPGA cã thÓ t¸i lËp tr×nh ngay trªn FPGA. C¸c m¸y nµy cã mét bo m¹ch chøa c¸c FPGA víi c¸c ch©n nèi víi c¸c chip l©n cËn gièng nh­ th«ng th­êng. ý t­ëng lµ mét ch­¬ng tr×nh phÇn mÒm cã thÓ ®­îc “biªn dÞch” (sö dông kü thuËt tæng hîp møc cao, møc logic vµ møc s¬ ®å b»ng tay) vµo ngay phÇn cøng. PhÇn cøng nµy sÏ ®­îc thùc hiÖn b»ng c¸ch lËp tr×nh chip FPGA. Ph­¬ng ph¸p nµy cã hai ­u ®iÓm chÝnh: mét lµ kh«ng cÇn qu¸ tr×nh lÊy lÖnh nh­ c¸c bé xö lý truyÒn thèng v× phÇn cøng ®· gép c¶ lÖnh. KÕt qu¶ lµ tèc ®é cã thÓ t¨ng lªn hµng tr¨m lÇn. Hai lµ, m«i tr­êng tÝnh to¸n cã thÓ thùc hiÖn song song møc cao, lµm t¨ng tèc thªm n÷a. e. T¸i cÊu h×nh thµnh phÇn trùc tiÕp FPGA cho phÐp cã thÓ thay ®æi theo mong muèn cÊu tróc cña mét m¸y ®ang ho¹t ®éng. Mét vÝ dô lµ c¸c thiÕt bÞ m¸y tÝnh tõ xa cã thÓ thay ®æi trùc tiÕp ®Ó kh¾c phôc sù cè hay cã lçi thiÕt kÕ. KiÓu FPGA thÝch hîp nhÊt cho øng dông nµy lµ nh÷ng FPGA cã c¸c chuyÓn m¹ch lËp tr×nh ®­îc. 2.7 C¸c øng dông v« tuyÕn cÊu ®Þnh nghÜa b»ng phÇn mÒm dùa trªn FPGA Trong thËp kû tr­íc, c¸c ASIC (c¸c IC øng dông chuyªn biÖt) vµ DSP ®· ®­îc triÓn khai ®Ó gi¶i quyÕt gÇn nh­ tÊt c¶ c¸c chøc n¨ng xö lý tÝn hiÖu liªn quan ®Õn th«ng tin v« tuyÕn. FPGA ®· phæ biÕn trong vµi thËp kû, vµ thÕ hÖ gÇn ®©y nhÊt cña FPGA rÊt m¹nh nã ®ang thay thÕ c¶ ASIC vµ DSP trong c¸c øng dông v« tuyÕn phÇn mÒm míi nhÊt. H¬n n÷a, c¸c líp c«ng cô thiÕt kÕ míi trong FPGA trî gióp cho c¶ c¸c nhµ thiÕt kÕ phÇn cøng vµ phÇn mÒm. Qu¸ tr×nh gì rèi c¸c thiÕt bÞ míi nµy trë nªn rÊt ®¬n gi¶n b»ng c¸c c«ng cô ph©n tÝch vµ m« h×nh hãa ­u tó. H×nh 2.6 minh häa mét hÖ thèng v« tuyÕn phÇn mÒm th«ng tin kh«ng d©y ®iÓn h×nh víi c¸c nhiÖm vô xö lý tÝn hiÖu kh¸c nhau. H×nh 2.6 C¸c chøc n¨ng xö lý tÝn hiÖu sè cña v« tuyÕn phÇn mÒm Th«ng th­êng, bé chuyÓn ®æi xuèng sè hãa hay bé phËn m¸y thu sè ®­îc gi¶i quyÕt víi mét thiÕt bÞ ASIC chuyªn dông bao gåm 3 khèi chÝnh: bé trén, bé dao déng néi, vµ bé läc. Bé dao ®éng néi, hay NCO, bao gåm bé tÝch lòy pha, nã chØ lµ mét thanh ghi vµ mét bé céng cã thÓ dïng nh­ c¸c khèi th­ viÖn chuÈn víi hÇu hÕt c¸c FPGA. Gi¸ trÞ pha cña bé tÝch lòy ®iÒu khiÓn mét b¶ng tra cøu sin/cos cã thÓ ®­îc thùc hiÖn nh­ mét ROM ®¬n gi¶n. Bé trén chÝnh lµ mét cÆp bé nh©n sè, hiÖn nay s½n cã nh­ lµ c¸c tµi nguyªn phÇn cøng chuyªn biÖt trong c¸c FPGA thÕ hÖ míi nhÊt. C¸c DSP cã thÓ lËp tr×nh th­êng ®­îc sö dông ®Ó thùc hiÖn c¸c chøc n¨ng ph©n tÝch vµ gi¶i m·, gi¶i ®iÒu chÕ th«ng th­êng. Tuy nhiªn, c¸c nhµ cung cÊp FPGA vµ c¸c bªn thø ba hiÖn nay ®Ò xuÊt mét sù lùa chän c¸c th­ viÖn IP ®Ó xö lý Viterbi, Reed-Solomon, c¸c bé gi¶i m· giµn vµ m· xo¾n, c¸c ph­¬ng tiÖn chuÈn mËt hãa d÷ liÖu, vµ c¸c m« h×nh kªnh nhiÔu kh¸c nhau. C¸c lâi IP nµy ®­a ra c¸c chøc n¨ng DSP kh¸c nhau. KÕt luËn ch­¬ng 2 Trong ch­¬ng 2 ®· thùc hiÖn nghiªn cøu c«ng nghÖ FPGA tõ tæng quan ®Õn cÊu tróc, ph©n lo¹i, quy tr×nh thiÕt kÕ c¬ b¶n vµ c¸c øng dông cña FPGA. ThÊy r»ng, FPGA ®ang trë thµnh thµnh phÇn kh«ng thÓ thiÕu cña thiÕt kÕ v« tuyÕn phÇn mÒm. Thªm n÷a, ngµy cµng nhiÒu chøc n¨ng ®­îc thªm vµo FPGA, hç trî cho c¸c kü s­ nhiÒu c«ng cô míi ®Ó qu¸ tr×nh thiÕt kÕ nhanh vµ chÝnh x¸c. Ch­¬ng 3 M¸y thu sè 3.1 Tæng quan vÒ m¸y thu sè M¸y thu sè ®· c¸ch m¹ng hãa c¸c hÖ thèng ®iÖn tö cho nhiÒu øng dông gåm th«ng tin, thu thËp d÷ liÖu vµ xö lý tÝn hiÖu. Môc nµy lµm râ ho¹t ®éng cña m¸y thu sè, nguyªn t¾c x©y dùng c¸c khèi cho v« tuyÕn phÇn mÒm, cã thÓ thay thÕ c¸c thiÕt kÕ m¸y thu t­¬ng tù truyÒn thèng, ®­a ra c¸c lîi Ých chÝnh trong thi hµnh, tû träng vµ gi¸. S¬ ®å khèi m¸y thu t­¬ng tù H×nh 3.1 S¬ ®å khèi m¸y thu t­¬ng tù M¸y thu v« tuyÕn ngo¹i sai th«ng th­êng nh­ trªn h×nh 3.1 ®· ®­îc sö dông trong gÇn mét thÕ kû. H·y xem l¹i cÊu tróc cña m¸y thu t­¬ng tù ®Ó viÖc so s¸nh víi m¸y thu sè trë nªn râ rµng. §Çu tiªn tÝn hiÖu cao tÇn tõ anten ®­îc khuÕch ®¹i, ®Æc tr­ng víi mét tÇng RF ®­îc ®iÒu chØnh nã khuÕch ®¹i mét miÒn b¨ng tÇn muèn thu. Sau ®ã tÝn hiÖu RF ®­îc khuÕch ®¹i nµy ®­îc ®­a vµo mét tÇng trén tÇn. §Çu vµo kh¸c tíi bé trén tõ bé dao ®éng néi mµ tÇn sè cña nã ®­îc ®iÒu chØnh bëi mét nóm ®iÒu chØnh trªn m¸y. Bé trén dÞch tÝn hiÖu ®Çu vµo mong muèn tíi tÇn sè trung tÇn IF nh­ h×nh 3.2 H×nh 3.2 Bé trén t­¬ng tù TÇng IF lµ mét bé khuÕch ®¹i b¨ng d¶i chØ ®Ó mét tÝn hiÖu hay ®µi ph¸t thanh ®i qua. Th«ng th­êng tÇn sè trung t©m cña c¸c tÇng IF lµ 455 kHz và 10,7 MHz ®èi víi c¸c ch­¬ng tr×nh ph¸t thanh AM vµ FM th­¬ng m¹i. Bé gi¶i ®iÒu chÕ kh«i phôc l¹i tÝn hiÖu ®iÒu chÕ ban ®Çu tõ ®Çu ra tÇng IF sö dông mét vµi kiÓu kh¸c nhau. VÝ dô, AM sö dông bé t¸ch sãng ®­êng bao vµ FM sö dông bé ph©n biÖt tÇn sè. Trong mét m¸y v« tuyÕn gia ®×nh ®iÓn h×nh ®Çu ra gi¶i ®iÒu chÕ ®­îc ®­a tíi bé khuÕch ®¹i ©m tÇn vµ sau ®ã tíi loa. Bé trén thùc hiÖn mét phÐp nh©n t­¬ng tù 2 tÝn hiÖu ®Çu vµo vµ t¹o ra tÝn hiÖu tÇn sè hiÖu. TÇn sè cña bé dao ®éng néi ®­îc ®Æt ®Ó hiÖu gi÷a tÇn sè dao ®éng néi vµ tÝn hiÖu ®Çu vµo mong muèn (kªnh v« tuyÕn muèn thu) b»ng tÇn sè trung tÇn IF. VÝ dô, nÕu muèn thu mét ®µi FM ë 100,7 MHz vµ tÇn sè IF lµ 10,7 MHz th× bé dao ®éng néi ®iÒu chØnh tíi 100,7 – 10,7 = 90 MHz (3.1) §iÒu nµy ®­îc gäi lµ “chuyÓn ®æi xuèng” hay “dÞch” v× mét tÝn hiÖu ë tÇn sè cao ®­îc dÞch xuèng tÇn sè thÊp h¬n b»ng bé trén. TÇng IF ho¹t ®éng nh­ mét bé läc d¶i hÑp nã chØ cho qua “ mét phÇn” cña ®Çu vµo RF ®· ®­îc dÞch. §é réng b¨ng cña tÇn IF b»ng ®é réng b¨ng cña tÝn hiÖu mµ b¹n ®ang cè thu. §èi víi FM th­¬ng m¹i, ®é réng b¨ng kho¶ng 100 kHz, cßn víi AM lµ kho¶ng 5 kHz. LÇn l­ît, kho¶ng c¸ch kªnh thÝch hîp lµ 200 kHz vµ 10 kHz. S¬ ®å m¸y thu sè H×nh 3.3 S¬ ®å khèi m¸y thu sè Nh×n vµo s¬ ®å m¸y thu sè trªn h×nh 3.3 ta thÊy ®iÓm gièng víi s¬ ®å m¸y thu t­¬ng tù lµ tÊt c¶ c¸c nguyªn lý cña c¸c m¸y thu t­¬ng tù vÉn ®­îc ¸p dông. Ngay sau khuyÕch ®¹i cao tÇn vµ mét tÇng chuyÓn ®æi cao tÇn tïy chän, chóng ta sö dông bé chuyÓn ®æi t­¬ng tù thµnh sè ®Ó sè hãa ®Çu vµo RF thµnh c¸c mÉu sè vµ tÊt c¶ c¸c thµnh phÇn phÝa sau nh­ bé trén, läc, gi¶i ®iÒu chÕ ®Òu ®­îc thùc hiÖn sö dông c¸c c¬ së xö lý tÝn hiÖu sè. Bé chuyÓn ®æi t­¬ng tù thµnh sè ho¹t ®éng theo ®Þnh lý Nyquist: Mét tÝn hiÖu bÊt kú cã thÓ ®­îc biÓu diÔn bëi c¸c mÉu rêi r¹c nÕu tèc ®é lÊy mÉu b»ng Ýt nhÊt hai lÇn ®é réng b¨ng cña tÝn hiÖu. VÝ dô, nÕu chóng ta sö dông mét bé chuyÓn ®æi A/D lÊy mÉu víi 70 MHz, th× ®é réng b¨ng cña tÝn hiÖu ®Çu vµo t­¬ng tù ph¶i nhá h¬n 35 MHz. B©y giê h·y xem ®iÒu g× x¶y ra nÕu chóng ta bá qua tiªu chuÈn Nyquist . H×nh 3.4 S¬ ®å nhiÔu ¶nh H×nh 3.4 cho thÊy hiÓn thÞ tÇn sè cña hÖ thèng ®ang ®­îc lÊy mÉu ë tÇn sè fs. §èi víi tÊt c¶ c¸c tÝn hiÖu ®Çu vµo nhá h¬n fs/2, nh­ tÇn sè f0, chóng ta ®¸p øng ®Çy ®ñ tiªu chuÈn Nyquist. Thùc tÕ, mét sè bÊt kú c¸c tÝn hiÖu cã thÓ ®­îc ®­a ra trong vïng bÞ g¹ch chÐo vµ tÊt c¶ sÏ ®­îc biÓu diÔn chÝnh x¸c trong d÷ liÖu ®­îc lÊy mÉu. Nh­ng nÕu chóng ta cã mét tÝn hiÖu lµ fa lín h¬n fs/2, viÖc thùc hiÖn lÊy mÉu sÏ t¹o ra mét nhiÔu ¶nh xuÊt hiÖn trong d÷ liÖu ®· lÊy mÉu t¹i tÇn sè fs-fa. NhiÔu ¶nh nµy kh«ng thÓ ph©n biÖt ®­îc víi tÝn hiÖu thùc nã cã thÓ ®­îc ®­a ra t¹i cïng tÇn sè ®ã. VÊn ®Ò lµ ë chç, nhiÔu ¶nh ®­îc t¹o ra ngay trong qu¸ tr×nh lÊy mÉu nªn c¸c xö lý phÝa sau kh«ng ph©n biÖt ®­îc tÝn hiÖu thùc vµ nhiÔu ¶nh. V× thÕ, cÇn thiÕt ph¶i ng¨n chÆn nhiÔu ¶nh tr­íc khi nã xuÊt hiÖn. H×nh 3.5 Bé läc khö nhiÔu ¶nh C¸ch dÔ dµng nhÊt ®Ó khö nhiÔu ¶nh lµ sö dông mét bé läc th«ng thÊp tr­íc bé A/D lo¹i bá tÊt c¶ c¸c tÝn hiÖu lín h¬n fs/2. Bé läc nµy ®­îc gäi lµ bé läc khö nhiÔu ¶nh nh­ minh häa trªn h×nh 3.5. B©y giê tÝn hiÖu fa ®· bÞ lo¹i nªn bé chuyÓn ®æi A/D kh«ng bao giê gÆp nã n÷a. C¸c bé läc khö nhiÔu ¶nh th­êng ®­îc g¾n cïng víi bé chuyÓn ®æi A/D ®Ó tiÖn cho ng­êi sö dông. Mét ®iÓm chó ý kh¸c, tiªu chuÈn Nyquist còng cã thÓ ®­îc ®¸p øng b»ng viÖc h¹n chÕ ®é réng b¨ng cña tÝn hiÖu ®­îc lÊy mÉu sö dông c¸c kiÓu bé läc kh¸c. VÝ dô, gi¶ sö chóng ta thùc sù muèn thu c¸c tÝn hiÖu n»m gi÷a fs/2 ®Õn fs trong s¬ ®å trªn. NÕu chóng ta sö dông bé läc d¶i th«ng víi d¶i th«ng tõ fs/2 ®Õn fs th× chóng ta sÏ ®¸p øng ®Çy ®ñ tiªu chuÈn Nyquist bëi v× ®é réng b¨ng th«ng b»ng mét nöa tèc ®é lÊy mÉu. Khi viÖc lÊy mÉu ®­îc thùc hiÖn, d¶i c¸c tÝn hiÖu tõ fs/2 ®Õn fs ®­îc “gËp” thµnh d¶i tÇn sè tõ DC ®Õn fs/2. TÇn sè nöa mÉu th­êng ®­îc gäi lµ tÇn sè gËp. Kü thuËt nµy ®«i khi ®­îc gäi lµ “lÊy mÉu d­íi” vµ trong khi viÖc nµy lµ tèt theo lý thuyÕt th× ph¶i cÈn thËn trong ho¹t ®éng thùc tÕ ®Ó ®¶m b¶o bé chuyÓn ®æi A/D hç trî c¸c tÇn sè ®Çu vµo cao h¬n ph¶i ®iÒu khiÓn. H×nh 3.6 S¬ ®å khèi m¸y thu sè Nh×n l¹i s¬ ®å khèi tæng thÓ, c¸c mÉu A/D sè ®i ra tõ bé chuyÓn ®æi A/D ®­îc ®­a tíi tÇng tiÕp theo lµ chip m¸y thu sè nh­ minh häa trong h×nh 3.6. Chip m¸y thu sè ®iÓn h×nh gåm mét chip nguyªn khèi ®¬n lÎ t¹o ra tr¸i tim cña hÖ thèng m¸y thu sè. Nã ®«i khi còng ®­îc gäi lµ bé chuyÓn h¹ tÇn sè sè DDC hay m¸y thu chuyÓn h¹ sè. Bªn trong chip m¸y thu sè hay DDC cã ba thµnh phÇn chÝnh: Bé dao ®éng néi Bé trén Bé läc th«ng thÊp Chó ý c¸c ®Çu vµo DDC lµ c¸c mÉu sè tõ bé A/D vµ clock lÊy mÉu cña A/D. Víi 70 MHz A/D, c¸c mÉu ®­îc ®­a tíi DDC vµ xö lý thêi gian thùc t¹i tèc ®é lªn ®Õn 70 MHz. Sau ®©y chóng ta sÏ ®i s©u vµo tõng thµnh phÇn cña m¸y thu sè trong h×nh 3.6, ®Çu tiªn lµ bé dao ®éng néi. H×nh 3.7 Bé dao ®éng néi Bé dao ®éng néi ®­îc minh häa trong h×nh 3.7, nã lµ bé tæ hîp tÇn sè trùc tiÕp (DDS) ®«i khi gäi lµ bé dao ®éng ®­îc ®iÒu khiÓn b»ng sè (NCO). ThiÕt bÞ nµy ®­îc thùc hiÖn hoµn toµn víi m¹ch ®iÖn sè. Bé dao ®éng t¹o ra c¸c mÉu sè cña hai sãng h×nh sin lÖch pha nhau chÝnh x¸c 900, t¹o ra c¸c tÝn hiÖu sin vµ cosin. Nã sö dông mét bé tÝch lòy pha sè vµ c¸c b¶ng tra cøu sin/cos. L­u ý r»ng xung clock A/D ®­îc ®­a tíi bé dao ®éng. C¸c mÉu sè ra cña bé dao ®éng néi ®­îc t¹o ra t¹i tèc ®é lÊy mÉu chÝnh b»ng tÇn sè clock lÊy mÉu A/D lµ fs. §iÒu quan träng ph¶i hiÓu lµ tèc ®é lÊy mÉu ®Çu ra lu«n ®­îc cè ®Þnh lµ fs, bÊt chÊp viÖc thiÕt lËp tÇn sè. TÇn sè ®Çu ra sin/cos ®­îc thay ®æi bëi viÖc lËp tr×nh l­îng sím pha trªn mÉu. L­îng sím pha nhá øng víi tÇn sè thÊp vµ sím pha lín víi tÇn sè cao. §é sím pha trªn mÉu tû lÖ trùc tiÕp víi tÇn sè ®Çu ra vµ cã thÓ lËp tr×nh tõ DC ®Õn fs/2 víi ®é ph©n gi¶i 32 bit. Sö dông tÇn sè clock lÊy mÉu 70 MHz, tÇn sè thay ®æi tõ DC ®Õn 35 MHz vµ ®é ph©n gi¶i ®¹t d­íi 1 Hz. H×nh 3.8 ChuyÓn pha liªn tôc Bé dao ®éng néi rÊt nh¹y víi c¸c ®Æc ®iÓm chuyÓn tÇn sè nh­ h×nh 3.8. Khi chuyÓn gi÷a hai tÇn sè, bé tÝch lòy sè duy tr× chÝnh x¸c pha cña c¸c ®Çu ra sin vµ cos cho viÖc chuyÓn ®­îc liªn tôc. Khi tÇn sè thay ®æi thùc tÕ lµ thay ®æi l­îng sím pha trªn mÉu. §iÒu nµy cho phÐp bé dao ®éng néi thùc hiÖn FSK. H×nh 3.9 Bé trén sè Thµnh phÇn tiÕp theo cña DDC lµ bé trén sè nh­ trong h×nh 3.9. Bé trén sè thùc tÕ gåm hai bé nh©n sè. C¸c mÉu ®Çu vµo sè tõ bé A/D ®­îc nh©n to¸n häc víi c¸c mÉu sin vµ cos sè tõ bé dao ®éng néi. L­u ý r»ng c¸c mÉu d÷ liÖu A/D ®Çu vµo vµ c¸c mÉu sin, cos tõ bé dao ®éng néi ph¶i ®­îc t¹o ra ë cïng tÇn sè, cô thÓ lµ, ë mçi xung clock A/D. Do tèc ®é d÷ liÖu cña c¶ hai ®Çu vµo bé trén ®Òu lµ tèc ®é lÉy mÉu A/D, fs, nªn bé nh©n còng ho¹t ®éng ë cïng tèc ®é ®ã vµ s¶n phÈm ®Çu ra bé nh©n lµ c¸c mÉu ë tèc ®é fs. C¸c ®Çu vµo sin vµ cos tõ bé dao ®éng néi t¹o ra c¸c ®Çu ra I vµ Q (cïng pha vµ vu«ng pha) nã quan träng ®èi víi viÖc duy tr× th«ng tin pha n»m trong tÝn hiÖu ®Çu vµo. Bé trén t¹o ra mét d¶i biªn ®¬n phøc tõ ®Çu vµo thùc. Kh¸c víi bé trén t­¬ng tù t¹o ra nhiÒu s¶n phÈm trén kh«ng mong muèn, bé trén sè lµ gÇn nh­ lý t­ëng vµ s¶n phÈm chØ cã hai ®Çu ra: tæng vµ hiÖu cña c¸c tÝn hiÖu tÇn sè. H×nh 3.10 Sù dÞch chuyÓn cña bé trén sè H·y nh×n vµo s¶n phÈm trén hiÖu trong miÒn tÇn sè nh­ h×nh 3.10. T¹i ®Çu ra cña bé trén, c¸c tÝn hiÖu b¨ng réng tÇn sè cao ®Çu vµo A/D ®­îc chuyÓn xuèng DC víi ®é dÞch hay ®é lÖch b»ng tÇn sè bé dao ®éng néi. §iÒu nµy t­¬ng ®­¬ng víi bé trén m¸y thu t­¬ng tù ngo¹i trõ m¸y thu t­¬ng tù trén ®Çu vµo RF xuèng mét tÇn sè trung tÇn IF. Trong m¸y thu sè, ®é chÝnh x¸c ®­îc t¹o bëi xö lý tÝn hiÖu sè cho phÐp chóng ta trén xuèng ngay b¨ng gèc (hay 0 Hz). B»ng viÖc ®iÒu chØnh bé dao ®éng néi trªn d¶i tÇn sè cña nã, bÊt kú phÇn nµo cña tÝn hiÖu RF còng ®­îc chuyÓn xuèng DC. Trªn thùc tÕ, phæ tÝn hiÖu RF b¨ng réng cã thÓ ®­îc dÞch quanh 0 Hz, tr¸i hay ph¶i, ®¬n gi¶n b»ng viÖc thay ®æi tÇn sè bé dao ®éng néi. Môc ®Ých lµ ®iÒu chØnh bé dao ®éng néi vÒ tÝn hiÖu mong muèn quanh 0 Hz ®Ó cho phÐp bé läc th«ng thÊp cã thÓ chØ cho qua tÝn hiÖu mong muèn. H×nh 3.11 Bé läc th«ng thÊp lµm gi¶m mÉu Khi mµ tÝn hiÖu RF ®· ®­îc dÞch, b©y giê nã s½n sµng ®Ó läc. Bé läc th«ng thÊp lµm gi¶m mÉu nhËn c¸c mÉu ®Çu vµo tõ ®Çu ra bé trén ë tÇn sè fs. Nã sö dông xö lý tÝn hiÖu sè ®Ó thùc hiÖn mét chøc n¨ng chuyÓn ®æi bé läc FIR (®¸p øng xung h÷u h¹n). Bé läc nµy cho qua tÊt c¶ c¸c tÝn hiÖu tõ 0 Hz trë nªn tíi tÇn sè ng­ìng hay ®é réng b¨ng cã thÓ lËp tr×nh, vµ lo¹i bá tÊt c¶ c¸c tÝn hiÖu cao h¬n tÇn sè ng­ìng. Bé läc sè nµy lµ mét bé läc phøc nã xö lý c¶ c¸c tÝn hiÖu I vµ Q tõ bé trén. T¹i ®Çu ra cã thÓ chän c¶ c¸c gi¸ trÞ I vµ Q hay chØ c¸c gi¸ trÞ thùc, tïy thuéc vµo yªu cÇu hÖ thèng. H×nh 3.12 H¹n chÕ b¨ng bé läc gi¶m mÉu H×nh 3.12 m« t¶ ho¹t ®éng cña bé läc trong miÒn tÇn sè. Bé läc chØ cho qua c¸c tÝn hiÖu tõ 0 Hz tíi ®é réng b¨ng bé läc. TÊt c¶ c¸c tÇn sè cao h¬n ®Òu bÞ lo¹i bá. Nhí r»ng c¸c tÝn hiÖu ®Çu vµo b¨ng réng ®­îc chuyÓn xuèng DC b»ng bé trén vµ n»m quanh 0 Hz b»ng viÖc ®iÒu chØnh tÇn sè cña bé dao ®éng néi. B©y giê t¹i ®Çu ra cña bé läc, thùc tÕ chóng ta ®· chän ®­îc mét d¶i nhá cña tÝn hiÖu ®Çu vµo RF vµ chuyÓn nã xuèng DC. Chóng ta ®· lo¹i bá tÊt c¶ c¸c tÝn hiÖu kh¸c trªn vµ d­íi d¶i mong muèn. Ho¹t ®éng h¹n chÕ b¨ng th«ng cña bé läc lµ t­¬ng tù víi ho¹t ®éng cña tÇng IF trong m¸y thu t­¬ng tù ngo¹i trõ bé läc th«ng thÊp lµm gi¶m mÉu ho¹t ®éng quanh DC thay v× t¹i trung t©m tÇn sè IF. H×nh 3.13 Zoom tÇn sè VÝ dô, nh×n vµo mét tÇn sè thùc tÕ minh häa trong h×nh 3.13. H×nh phÝa bªn trªn thÓ hiÖn mét ®Çu vµo RF b¨ng réng 30 MHz ®­îc lÊy mÉu b»ng bé chuyÓn ®æi A/D t¹i 70 MHz. Gi¶ sö r»ng chóng ta cã mét tÝn hiÖu mong muèn ë 20 MHz vµ chóng ta biÕt r»ng ®é réng b¨ng cña tÝn hiÖu ®ã lµ 6 kHz. B»ng viÖc thiÕt lËp bé dao ®éng néi tíi 20 MHz vµ ®é réng b¨ng cña bé läc lµ 6 kHz chóng ta cã thÓ dÞch chuyÓn tÝn hiÖu vµ chÝnh x¸c chØ b¨ng 6 kHz nh­ trong h×nh phÝa d­íi. Chó ý r»ng d¶i ®Çu vµo quanh 20 MHz ®· ®­îc chuyÓn xuèng DC vµ ®Çu ra phøc cho phÐp chóng ta tÝnh phæ n¨ng l­îng FFT phøc n»m ë 0 Hz. C¸c thµnh phÇn tÇn sè lóc tr­íc trªn 20 MHz th× b©y giê ë bªn ph¶i 0 Hz cßn ë d­íi 20 MHz th× n»m bªn tr¸i 0 Hz. Sãng mang 20 MHz b©y giê chÝnh lµ 0 Hz. Trong tr­êng hîp nµy, chóng ta ®· sö dông bé läc th«ng thÊp lµm gi¶m mÉu ®Ó thùc hiÖn gi¶m ®é réng b¨ng tÝn hiÖu tõ 30 MHz xuèng 6 kHz. Tèc ®é lÊy mÉu còng ®­îc gi¶m tõ 70 MHz tíi 7 kHz, víi hÖ sè b»ng 10.000. B©y giê h·y xem xÐt mét c¸ch chÝnh x¸c viÖc gi¶m mÉu cña bé läc FIR ®iÒu khiÓn nh­ thÕ nµo. H×nh 3.14 HÖ sè gi¶m mÉu §Ó thiÕt lËp ®é réng b¨ng th«ng cña bé läc, cÇn ph¶i lËp tr×nh mét tham sè ®­îc gäi lµ hÖ sè gi¶m mÉu nh­ h×nh 3.14. Do ®é réng b¨ng ®Çu ra vµ tèc ®é lÊy mÉu ®Çu ra liªn quan trùc tiÕp ®Õn m¸y thu chuyÓn ®æi xuèng sè, hÖ sè gi¶m mÉu còng thiÕt lËp tèc ®é lÊy mÉu ®Çu ra. HÖ sè gi¶m mÉu, N, x¸c ®Þnh tû sè gi÷a c¸c ®é réng b¨ng ®Çu ra vµ ®Çu vµo. Chó ý r»ng tèc ®é lÊy mÉu ®Çu ra ®èi víi c¸c ®Çu ra thùc b»ng hai lÇn c¸c ®Çu ra phøc. VÝ dô, nÕu cã mét tèc ®é lÊy mÉu ®Çu vµo 70 MHz vµ ®é réng b¨ng ®Çu ra nhá mong muèn lµ 7 kHz, hÖ sè gi¶m mÉu nªn ®­îc ®Æt lµ 10.000. Tèc ®é lÊy mÉu ®Çu ra sÏ lµ 7 kHz ®èi víi c¸c ®Çu ra phøc vµ 14 kHz víi c¸c ®Çu ra thùc. Chó ý r»ng ®é réng b¨ng cã thÓ sö dông lu«n nhá h¬n ®é réng b¨ng Nyquist, v× thÕ trong c¸c vÝ dô tr­íc chóng ta thÊy mét ®é réng b¨ng th«ng ®Çu vµo kho¶ng 30 MHz (víi tèc ®é lÊy mÉu 70 MHz) vµ mét ®é réng b¨ng ®Çu ra kho¶ng 6 kHz (víi mét tèc ®é lÊy mÉu phøc lµ 7 kHz vµ 14 kHz víi thùc). M¸y thu sè cã thÓ ®­îc chia thµnh hai líp, d¶i réng vµ d¶i hÑp, ph©n biÖt bëi d¶i hÖ sè gi¶m mÉu cã thÓ lËp tr×nh. C¸c m¸y thu d¶i hÑp ®iÓn h×nh cã d¶i c¸c hÖ sè gi¶m mÉu tõ 32 hoÆc 64 tíi 65.536 hoÆc 131.072, phô thuéc vµo h·ng s¶n xuÊt chip. C¸c m¸y thu d¶i réng ®iÓn h×nh cã d¶i c¸c hÖ sè gi¶m mÉu tõ 2 tíi 64. 3.2 Giíi thiÖu phÇn mÒm System Generator 10.1 PhÇn mÒm System Generator 10.1 lµ c«ng cô thiÕt kÕ do h·ng Xilinx kÕt hîp víi Mathwork ®­a ra ®Ó phuc vô cho viÖc thiÕt kÕ trªn c¸c FPGA ®­îc h×nh t­îng hãa b»ng h×nh ¶nh. System Generator ho¹t ®éng nh­ mét tËp c¸c khèi bæ sung cho Mathwork’s Simulink. Simulink lµ c«ng cô thiÕt kÕ s¬ ®å khèi cho Matlab ®Ó cho phÐp thiÕt kÕ ®å ho¹ vµ m« pháng. C¸c m« h×nh ®­îc x©y dùng theo giao diÖn ng­êi sö dông ®å ho¹ b»ng c¸ch kÐo c¸c khèi kh¸c nhau vµo trong kh«ng gian lµm viÖc vµ kÕt nèi chóng. Th­ viÖn Simulink cña System Generator chøa 2 th­ viÖn: Xilinx Blocksets vµ Xilinx Refenrence Blocksets, c¸c khèi trong th­ viÖn ®­îc x©y dùng s½n cho ng­êi thiÕt kÕ gióp cho viÖc thiÕt kÕ ®­îc nhanh chãng. H×nh 3.15 Th­ viÖn Simulink cña System Generator 3.2.1 Mét vµi ®Æc ®iÓm khi x©y dùng m« h×nh System Generator - Mçi m« h×nh Simulink ph¶i chøa Ýt nhÊt mét khèi System Generator, khèi nµy dïng ®Ó ®iÒu khiÓn qu¸ tr×nh biªn dÞch, vµ m« pháng phÇn cøng. - Víi c¸c cÊu tróc ph©n nh¸nh th× ngoµi viÖc viÕt ch­¬ng tr×nh b»ng c¸ch nèi c¸c khèi chøc n¨ng víi nhau, ta cßn cã thÓ sö dông c¸c ng«n ng÷ kh¸c ®Ó t¹o ra khèi cã tÝnh n¨ng ®Æc biÖt (nh­ cÊu tróc ph©n nh¸nh). §iÒu nµy lµ v« cïng thuËn lîi trong viÖc x©y dùng c¸c m« h×nh phøc t¹p. - Lu«n chó ý c¸c l­u ý trong c¸c khèi, ®iÒu nµy cã thÓ gióp cho thiÕt kÕ tèi ­u h¬n trong viÖc tiÕt kiÖm c¸c tµi nguyªn. - C¸c ®Çu vµo vµ c¸c ®Çu ra cña b¶n thiÕt kÕ: §Æt thªm c¸c thanh ghi hoÆc khèi gi÷ chËm vµo sau Gateway In vµ tr­íc Gateway Out ®Ó t¨ng hiÖu n¨ng cho phÇn cøng FPGA. - ChÌn c¸c thanh ghi ph©n luång vµo bÊt kú n¬i ®©u nÕu cã thÓ: C¸c ph©n luång chiÒu s©u ®­îc thùc hiÖn hiÖu qu¶ víi c¸c khèi gi÷ chËm do thanh ghi SRL16 nguyªn thuû ®­îc sö dông. System Generator chøa th­ viÖn Simulink c¸c khèi chøc n¨ng ®Ó x©y dùng c¸c m¹ch DSP, m¹ch sè häc, m¹ch logic sè. C¸c khèi nµy tÝnh to¸n ®Çu ra th«ng qua c¸c ®Çu vµo cña chóng, cã thÓ x¸c ®Þnh d¹ng ®Çu ra l­îng tö chÝnh x¸c. Cã thÓ kÕt hîp c¸c khèi Xilinx víi MATLAB vµ c¸c khèi Simulink ®Ó t¹o ra Testbench vµ ®Ó ph©n tÝch d÷ liÖu ®­îc tÝnh ra trong m« h×nh. Víi sù trõu t­îng ho¸ møc cao System Generator cho phÐp ph¸t triÓn vµ kiÓm tra thuËt to¸n mét c¸ch nhanh chãng. Thªm vµo th­ viÖn m« h×nh hÖ thèng, System Generator chøa mét m¸y ph¸t m· ®Ó tù ®éng t¹o ra mét Netlist VHDL tæng hîp. Netlist nµy chøa c¸c khèi IP (®Æc tÝnh th«ng minh) mµ ®· ®­îc thiÕt kÕ cÈn thËn ®Ó thùc hiÖn tèi ­u vÒ tèc ®é vµ mËt ®é cao trong Xilinx FPGA. §ång thêi System Generator t¹o ra mét Project vµ c¸c File cÇn thiÕt ®Ó sö dông trong Xilinx ISE còng nh­ trong c¸c c«ng cô tæng hîp chÝnh. 3.2.2 C¸c b­íc thùc hiÖn m« h×nh ho¸ hÖ thèng DSP trªn System Generator X©y dùng m« h×nh. ThiÕt lËp c¸c tham sè, t¹o cÊu h×nh ®­êng d÷ liÖu. M« pháng, kiÓm tra kÕt qu¶ trªn Simulink. Biªn dÞch ra c¸c file cÇn thiÕt cho c¸c c«ng cô tæng hîp, ®ång m« pháng phÇn cøng, thùc hiÖn vµo Xilinx FPGA. 3.2.3 Ph­¬ng ph¸p vµ quy tr×nh thiÕt kÕ chÕ t¹o hÖ phÇn cøng tiªu chuÈn cã dïng FPGA vµ c¸c hÖ DSP H×nh 3.16 Ph­¬ng ph¸p vµ quy tr×nh thiÕt kÕ, chÕ t¹o phÇn cøng tiªu chuÈn trªn c¬ së sö dông FPGA, CPLD vµ DSP System Generator FPGA, DSP PCI/ Compact PCI/VME HDL Simulation, Synthesis Matlab Simulink Algorithms Developer’s kit for DSP Emulator Map, Place, Root Code Composer Studio ChÕ t¹o phÇn cøng tiªu chuÈn Ph©n tÝch ph­¬ng ph¸p vµ quy tr×nh trªn ta thÊy c¸c b­íc thùc hiÖn tæng thÓ nh­ sau: ViÖc thiÕt kÕ hÖ thèng vµ thuËt to¸n sÏ ®­îc thùc hiÖn trªn m«i tr­êng Matlab/ Simulink, viÖc thùc tÕ ho¸ c¸c thuËt to¸n sÏ ®­îc thùc hiÖn nhê c«ng cô phÇn mÒm System Generator, sau ®ã lµ c¸c b­íc m« pháng vµ tæng hîp ë møc HDL, c¸c b­íc thiÕt kÕ bè trÝ ®­êng nèi, bè trÝ linh kiÖn, m« pháng – kiÓm tra vµ chÕ t¹o phÇn cøng cã chøa FPGA. Tr­êng hîp trªn Board ®iÖn tö dïng c¸c DSP th× sÏ cã thªm nh¸nh c¸c c«ng cô ph¸t triÓn cho DSP (vÝ dô cho hä TexasInst Developer‘s kÝt, Code Composer Studio, Emulations). 3.3 Thùc hiÖn thiÕt kÕ m¸y thu sè tÝn hiÖu FM b»ng phÇn mÒm System Generator 10.1 3.3.1 Bé chuyÓn h¹ tÊn sè sè DDC M« h×nh cña bé chuyÓn h¹ nh­ h×nh sau: H×nh 3.17 CÊu tróc bé DDC TÝn hiÖu FM ®Çu vµo sau khi qua ADC ®­îc chia lµm 2 phÇn ®­a vµo 2 bé trén M1 vµ M2 ®Ó t¹o ra 2 thµnh phÇn ®ång pha (I) vµ thµnh phÇn vu«ng pha (Q) ë b¨ng gèc phôc vô cho viÖc gi¶i ®iÒu chÕ tÝn hiÖu FM phÝa sau. DDS cung cÊp 2 tÝn hiÖu sin vµ cosin cho bé trén, 2 tÝn hiÖu nµy cã chu kú b»ng tÝn hiÖu FM ®Çu vµo vµ cïng tèc ®é mÉu víi bé ADC, ®Ó viÖc trén ®­îc thùc hiÖn ®óng. H×nh 3.18 CÊu tróc bé trén sè Khèi DDS lµ 1 bé tæ hîp tÇn sè trùc tiÕp, còng th­êng ®­îc gäi lµ bé dao ®éng ®­îc ®iÒu khiÓn b»ng sè (NCO). Khèi nµy sö dông mét hÖ thèng b¶ng tra cøu ®Ó t¹o ra c¸c h×nh sin. Bé tÝch lòy sè t¹o ra mét pha ®­îc ¸nh x¹ tõ b¶ng tra cøu vµo d¹ng sãng ®Çu ra. Sau bé trén tÝn hiÖu ®­îc ®­a ®Õn bé läc CIC. Bé läc CIC Lµm gi¶m mÉu ®ång thêi khuÕch ®¹i tÝn hiÖu vµ lµ bé läc cã ®Æc tÝnh chän läc th«ng thÊp víi d¶i tÇn hÑp. Bé läc CIC cã thÓ ho¹t ®éng trùc tiÕp ë tÇn sè lÊy mÉu ®Çu vµo hÖ thèng lªn tíi hµng tr¨m MHz. §ång thêi CIC cã ®Æc tuyÕn pha tuyÕn tÝnh, kiÓu läc ®a tèc ®é víi hÖ sè gi¶m mÉu lín (8 - 4096 lÇn). H×nh 3.19 Bé läc CIC Sau CIC c¸c mÉu tÝn hiÖu ®­îc gi¶m c¬ b¶n phï hîp víi d¶i tÇn míi cña tÝn hiÖu. §Çu ra cña bé läc CIC cho ta 2 thµnh phÇn I vµ Q cña tÝn hiÖu FM sè t¹i b¨ng gèc, hai thµnh phÇn nµy ®­îc ®­a tíi ®Çu vµo cña bé gi¶i ®iÒu chÕ. H×nh 3.20 M« h×nh bé DDC trong System Generator 3.3.2 Bé gi¶i ®iÒu chÕ FM sè Ph­¬ng tr×nh phøc cho tÝn hiÖu FM t¹i b¨ng gèc X(t)FM = .{cos[P(t)FM] + jsin[P(t)FM]} = ejP(t) (3.2) Mét mÉu FM gi¸ trÞ phøc cã thÓ ®­îc m« t¶ b»ng mét vector trªn ®­êng trßn ®¬n vÞ phøc víi mét biªn ®é vµ mét gãc pha. Mét mÉu phøc ®­a ra m¶nh hai th«ng tin mét thµnh phÇn thùc vµ mét thµnh phÇn ¶o. D¹ng cùc cña mét sè phøc z = x + j y, cã thÓ ®­îc biÓu diÔn b»ng biÓu thøc sau. z=r.ejө (3.3) r= (3.4) ө=tan-1 (3.5) H×nh 3.21 HÖ täa ®é cùc Mçi mÉu phøc ®i vµo cã mét biªn ®é vµ gãc pha míi. Do tÝn hiÖu FM l­u tÊt c¶ th«ng tin ë pha, nªn gãc pha lµ th«ng tin ®­îc yªu cÇu ®Ó gi¶i ®iÒu chÕ mét tÝn hiÖu lÊy mÉu phøc. Râ rµng lµ viÖc x¸c ®Þnh tÇn sè tøc thêi cña tÝn hiÖu FM tõ gãc pha sÏ kh«i phôc b¶n tin gèc. Ta t×m gãc pha cña tÝn hiÖu FM t¹i b¨ng gèc tõ 2 thµnh phÇn I vµ Q dùa vµo biÓu thøc: (3.6) Trong System Generator 10.1 chøa khèi CORDIC ATAN cung cÊp cho chóng ta gãc pha cña tÝn hiÖu FM tõ hai thµnh phÇn I vµ Q. Sau khi ®· t¸ch ®­îc pha cña tÝn hiÖu FM ta cho qua bé vi ph©n sè (bé ph©n biÖt pha) ®Ó lÊy ®­îc tÇn sè tøc thêi cña tÝn hiÖu FM cuèi cïng ®­a qua bé läc audio (bé läc ©m tÇn) ®Ó lÊy b¶n tin gèc. H×nh 3.22 M« h×nh bé gi¶i ®iÒu chÕ tÝn hiÖu FM sè CORDIC ATAN thùc hiÖn biÕn ®æi mét hÖ täa ®é vu«ng gãc tíi mét hÖ täa ®é cùc sö dông thuËt to¸n song song hoµn toµn CORDIC (Coordinate Rotation Digital Computer) trong chÕ ®é Circular Vectoring. Tøc lµ, c¨n cø vµo mét ®Çu vµo phøc , nã tÝnh mét vector míi , trong ®ã biªn ®é m = K., pha = arctan, th«ng th­êng hÖ sè tû lÖ biªn ®é K = 1.646760... kh«ng ®­îc bï trong bé xö lý. NghÜa lµ biªn ®é ®Çu ra nªn ®­îc lÊy tû lÖ theo hÖ sè nµy. ThuËt to¸n CORDIC ATAN ®­îc thùc hiÖn theo 3 b­íc sau: 1. Quay gãc th«: thuËt to¸n nµy chØ héi tô ®èi víi c¸c gãc n»m gi÷a -π/2 vµ π /2 v× vËy nÕu x<0, vector ®Çu vµo ®­îc ph¶n ¶nh ®Õn cung phÇn t­ thø I hoÆc thø IV b»ng viÖc lµm cho täa ®é x kh«ng ©m. 2. Quay gãc tinh: ®èi víi viÖc chuyÓn ®æi hÖ täa ®é vu«ng gãc thµnh hÖ täa ®é cùc, vector kÕt qu¶ ®­îc quay t¨ng tõng b­íc nhê c¸c gãc nhá dÇn ®Õn khi y tiÕn ®Õn 0. Trong b­íc thø i, gãc quay b»ng atan, phô thuéc vµo ®Çu vµo y cña nã nhá h¬n hay lín h¬n 0. 3. Söa gãc: nÕu cã mét sù ph¶n ¶nh ®­îc ¸p dông trong b­íc 1 th× b­íc nµy ¸p dông viÖc söa gãc thÝch hîp b»ng c¸ch trõ nã cho +\- π. H×nh 3.23 M« h×nh bé gi¶i ®iÒu chÕ FM sè trong System Generator Sau khi cã gãc pha tõ khèi CORDIC ATAN ta sÏ sö dông bé vi ph©n sè ®Ó lÊy ra tÇn sè tøc thêi cña tÝn hiÖu FM. M« h×nh thiÕt kÕ bé vi ph©n sè trong System Generator nh­ h×nh sau: H×nh 3.24 M« h×nh bé vi ph©n sè Bé vi ph©n sè ®o hiÖu pha gi÷a c¸c mÉu liªn tiÕp cña c¸c mÉu tÝn hiÖu FM b¨ng gèc. §iÒu nµy ®­îc thùc hiÖn trong thiÕt kÕ b»ng khèi Delay vµ khèi AddSub (c¸c mÉu ®Õn trõ víi mÉu tr­íc nã ®­îc gi÷ chËm Z-1 b»ng khèi Delay). HiÖu nµy gäi ra tÇn sè tøc thêi cña tÝn hiÖu FM ®©y chÝnh lµ c¸c mÉu cña tÝn hiÖu gèc. Cã mét vÊn ®Ò ph¸t sinh lµ t¹i c¸c thêi ®iÓm mµ tÝn hiÖu b¶n tin gèc thay ®æi nhanh th× ®Çu ra bé vi ph©n sè cã gi¸ trÞ rÊt lín lµm mÐo tÝn hiÖu nªn cÇn ®­îc läai bá. C¸c mÉu sau vi ph©n ®­îc so s¸nh víi mét gi¸ trÞ ng­ìng ®Ó lo¹i bá c¸c mÉu cã gi¸ trÞ rÊt lín nµy nh­ ®­îc minh häa trªn h×nh 3.24. TÝn hiÖu sau ®ã ®­îc ®­a qua bé läc ©m tÇn ®Ó lo¹i bá c¸c nhiÔu. M« h×nh bé läc ©m tÇn vµ khuÕch ®¹i tÝn hiÖu ©m tÇn trong System Generator ®­îc x©y dùng nh­ h×nh sau: H×nh 3.25 Bé läc ©m tÇn Ta dïng c«ng cô FDATool ®Ó thiÕt kÕ bé läc ©m tÇn cã tÇn sè trung t©m lµ 1 Khz. Khèi CMult cã t¸c dông khuÕch ®¹i biªn ®é cña tÝn hiÖu lªn møc mong muèn. M« h×nh toµn bé thiÕt kÕ trong phÇn mÒm System Generator : H×nh 3.26 M« h×nh thiÕt kÕ trong System Generator KÕt qu¶ ch¹y m« pháng trong Matlab H×nh 3.27 KÕt qu¶ ch¹y m« pháng thiÕt kÕ trong Matlab 3.4 Thùc nghiÖm vµ kiÓm tra trªn thiÕt bÞ 3.4.1 Giíi thiÖu bo m¹ch Virtex-4 Bo m¹ch ®­îc thö nghiÖm lµ XC4VLX60-10FF668C thuéc dßng Virtex 4 cña Xilinx cã c¸c ®Æc ®iÓm chÝnh sau: DDR SDRAM 64MB Flash 4MB Giao diÖn thu ph¸t LVDS 16-Bit H×nh 3.28 Bo m¹ch Virtex 4 cña Xilinx Mét cæng m¹ng Bé t¹o dao ®éng 100 MHz C¸c gi¾c nèi ®Õn bé P420 1 Mµn h×nh LCD 32Mb Flash nèi tiÕp viÖc cÊu h×nh FPGA Cæng cÊu h×nh/ lËp tr×nh PC4 JTAG Cæng RS232 4 LED rêi r¹c 4 chuyÓn m¹ch kiÓu thanh tr­ît 1 chuyÓn m¹ch DIP 8 vÞ trÝ 1 Cæng RS232 1 Cæng USB 3.4.2 Biªn dÞch thiÕt kÕ Trong m« h×nh thiÕt kÕ kÝch ®óp vµo khèi System Generator vµ chän kiÓu biªn dÞch lµ Bitstream nh­ h×nh sau: Trong môc chän thiÕt bÞ ta chän Virtex4 xc4vlx60-10ff668, chän th­ môc chøa c¸c file biªn dÞch trong môc Target directory, chän tÇn sè clock cho qu¸ tr×nh biªn dÞch b»ng tÇn sè clock trªn bo m¹ch thùc lµ 100 MHz t­¬ng øng víi chu kú 10 ns. Sau khi chän xong Ên nót Generate. Ch­¬ng tr×nh sÏ t¹o ra cho chóng ta file .bit ®Ó n¹p vµo bo m¹ch th«ng qua lµ c«ng cô cña phÇn mÒm ISE . Khi ch­¬ng tr×nh b¸o cho biÕt thiÕt kÕ ®· ®­îc n¹p thµnh c«ng vµo bo m¹ch. KÕT LUËN §å ¸n ®· tr×nh bµy ®­îc nh÷ng ®Æc ®iÓm kü thuËt c¬ b¶n cña hÖ thèng v« tuyÕn ®Þnh nghÜa b»ng phÇn mÒm hiÖn nay, nh÷ng ­u ®iÓm næi tréi vµ kh¶ n¨ng øng dông cña nã trong thùc tÕ. §å ¸n còng giíi thiÖu ®­îc nh÷ng vÊn ®Ò c¬ b¶n nhÊt vÒ c«ng nghÖ FPGA vµ quy tr×nh thiÕt kÕ víi c«ng nghÖ nµy. Trªn c¬ së nh÷ng phÇn ®· nghiªn cøu ®· thùc hiÖn thiÕt kÕ mét m« h×nh m¸y thu sè tÝn hiÖu FM b»ng c«ng nghÖ FPGA, thùc hiÖn m« pháng vµ n¹p ch­¬ng tr×nh vµo kit XC4VLX60 -10FF668C thuéc dßng Virtex 4 cña Xilinx. C¸c kÕt qu¶ ®· ®¹t ®­îc trong ®å ¸n sÏ lµ c¬ së ®Ó thiÕt kÕ m¸y thu sè ë c¸c chÕ ®é kh¸c (SSB, AM, PSK, QAM…) vµ triÓn khai thiÕt kÕ øng dông trong c¸c m¸y thu sè thùc tÕ. T«i rÊt mong sù ®ãng gãp ý kiÕn cña c¸c thÇy c« vµ c¸c b¹n quan t©m ®Õn lÜnh vùc nµy. T«i xin ch©n thµnh c¶m ¬n! Tµi liÖu tham kh¶o TiÕng ViÖt NguyÔn Ngäc BÝch, C¬ Së Xö Lý Sè TÝn HiÖu Vµ §iÒu KhiÓn Sè, 2001 NguyÔn Quèc B×nh, Kü ThuËt TruyÒn DÉn Sè, 2001 §ç Quèc Trinh, Ph¹m V¨n BÝnh, C¬ Së X©y Dùng §iÖn §µi Qu©n Sù, 2003 TiÕng Anh Petri Isomaki, Nastooh Avessta, An Overview of Software Defined Radio Technologies, 2004 Adam S. Harrington, Chin-Gi Hong, Anthony L. Piazza, Software Defined Radio The Revolution of Wireless Communication, 2004 Rodger H. Hosking, Digital Receiver Handbook: Basics of Software Radio, 2003 Volnei A. Pedroni, Circuit Design with VHDL, 2004 Angsuman Rudra, FPGA-based applications for software radio, 2004 JamesMichael Shima, FM Demodulation Using a Digital Radio And Digital Signal Processing, 1995

Các file đính kèm theo tài liệu này:

  • dochoan thanh.doc
  • docBIA NGOAI.doc
  • docbia trong.doc
  • docmuc luc.doc
  • docNhiemvu.doc
  • doctuviet tat.doc
Luận văn liên quan