¡¡¡¡ÒýÑÔ
¡¡¡¡Èí¼þÎÞÏߵ磨Software Radios£©ÊÇÒ»ÖÖеÄÎÞÏßµçͨÐŵÄÌåϵ½á¹¹¡£¾ßÌåÀ´Ëµ£¬Èí¼þÎÞÏßµçÊÇÒԿɱà³ÌµÄDSP»òCPUΪÖÐÐÄ£¬½«Ä£¿é»¯¡¢±ê×¼»¯µÄÓ²¼þµ¥ÔªÓÃ×ÜÏß·½Ê½Á¬½ÓÆðÀ´£¬¹¹³ÉͨÓõÄÓ²¼þƽ̨£¬²¢Í¨¹ýÈí¼þ¼ÓÔØÀ´ÊµÏÖ¸÷ÖÖÎÞÏßͨÐŹ¦ÄܵĿª·ÅʽÌåϵ½á¹¹¡£
¡¡¡¡Ëæ×ÅͨÐŵķ¢Õ¹£¬¸ßËÙ´«Êä¼¼ÊõÒýÆð¹ã·ºµÄÑо¿ºÍ×¢Òâ¡£µ½Ä¿Ç°ÎªÖ¹£¬ÎÞÏß´«ÊäµÄËÙÂÊÊÜÏÞÓÚÓ²¼þÌõ¼þ¡£ÒªÊµÏÖ¸ßËÙ´«Ê䣬¾Í±ØÐë½áºÏ¸÷ÖÖоƬµÄÌص㣬ʹӲ¼þƽ̨¾ßÓмòµ¥¡¢Í¨ÓõÄÌص㣬Òò´ËÐèÒª¿ª·¢Ò»¸öͨÓÃƽ̨¡£
¡¡¡¡DSPÔÚ¿ØÖƺÍÐźŴ¦Àí·½ÃæÓÐÓÅÊÆ£¬»ù´øÐźŵĵ÷ÖÆ¡¢½âµ÷¼°FFT/IFFTµÈÔËËã¿ÉÒÔÓÉDSPʵÏÖ£¬µ«ÊÇÔÚʵʱ´¦Àí·½ÃæÊܵ½ÏÖÓÐDSP´¦ÀíËٶȺÍÄÜÁ¦µÄÖÆÔ¼¡£¶ÔÓÚÐźÅÍ»·¢¼ì²âÕâÖÖÔËËãÁ¿´óµÄ´¦Àí£¬ÓÈÆäÊÇÔÚ¸ßËÙ´«Êäʱ£¬Í¨³£ÒªÊ¹ÓÃFPGA¡£FPGAÌØÓеÄÁ÷Ë®ÏßÉè¼Æ½á¹¹¿ÉÒÔʹǰºó¼¶ÔÚʱ¼äÉϲ¢·¢£¬´ïµ½¸ßЧ¡¢¸ßËÙ¡£ÎªÁ˼õСDSPÔÚÐźŴ¦ÀíÉϵÄѹÁ¦£¬Í¬Ê±Âú×ã¸ßËÙÒªÇ󣬲ÉÓÃרÓÃÊý×Ö±äƵоƬÀ´ÊµÏÖÊý×ÖÉÏϱäƵ¡£
¡¡¡¡ÎªÁ˺ÍÈí¼þÎÞÏßµçµÄ˼Ïëͳһ£¬ÔÚϵͳÉè¼Æʱ¿¼ÂǼæÈݵ¥Ôز¨µ÷Öƽâµ÷·½Ê½£¬²ÉÓÃDSP¡¢FPGA¡¢ÉÏϱäƵÆ÷µÄ·½°¸£¬²»Ê¹ÓÃרÓõ÷Öƽâµ÷оƬ¡£
¡¡¡¡1 OFDMÔÀíºÍ»ù´øÐźÅÄ£ÐÍ
¡¡¡¡Õý½»Æµ·Ö¸´ÓÃ[1]OFDM£¨Orthogonal Frequency Division Multiplex)ÊÇÒ»ÖÖ¶àÔز¨µ÷ÖÆ·½Ê½£¬Í¨¹ý¼õСºÍÏû³ýÂë¼ä´®ÈŵÄÓ°ÏìÀ´¿Ë·þÐŵÀµÄƵÂÊÑ¡ÔñÐÔË¥Âä¡£ËüµÄ»ù±¾ÔÀíÊǽ«ÐźŷָîΪN¸ö×ÓÐźţ¬È»ºóÓÃN¸ö×ÓÐźŷֱðµ÷ÖÆN¸öÏ໥Õý½»µÄ×ÓÔز¨¡£ÓÉÓÚ×ÓÔز¨µÄƵÆ×Ï໥Öصþ£¬Òò¶ø¿ÉÒԵõ½½Ï¸ßµÄƵÆ×ЧÂÊ¡£½ü¼¸ÄêOFDMÔÚÎÞÏßͨÐÅÁìÓòµÃµ½Á˹㷺µÄÓ¦Óá£
¡¡¡¡µ±µ÷ÖÆÐźÅͨ¹ýÎÞÏßÐŵÀµ½´ï½ÓÊÕ¶Ëʱ£¬ÓÉÓÚÐŵÀ¶à¾¶Ð§Ó¦´øÀ´µÄÂë¼ä´®ÈŵÄ×÷Óã¬×ÓÔز¨Ö®¼ä²»ÔÙ±£³ÖÁ¼ºÃµÄÕý½»×´Ì¬£¬Òò¶ø·¢ËÍÇ°ÐèÒªÔÚÂëÔª¼ä²åÈë±£»¤¼ä¸ô¡£Èç¹û±£»¤¼ä¸ô´óÓÚ×î´óʱÑÓÀ©Õ¹£¬ÔòËùÓÐʱÑÓСÓÚ±£»¤¼ä¸ôµÄ¶à¾¶ÐźŽ«²»»áÑÓÉìµ½ÏÂÒ»¸öÂëÔªÆڼ䣬´Ó¶øÓÐЧµØÏû³ýÁËÂë¼ä´®ÈÅ¡£µ±²ÉÓõ¥Ôز¨µ÷ÖÆʱ£¬Îª¼õСISIµÄÓ°Ï죬ÐèÒª²ÉÓö༶¾ùºâÆ÷£¬Õâ»áÓöµ½ÊÕÁ²ºÍ¸´ÔÓÐԸߵÈÎÊÌâ¡£
¡¡¡¡Í¼1ÊÇOFDM»ù´øÐźŴ¦ÀíÔÀíͼ¡£ÆäÖУ¬Í¼1£¨a£©ÊÇ·¢Éä»ú¹¤×÷ÔÀí£¬Í¼1£¨b£©ÊǽÓÊÕ»ú¹¤×÷ÔÀí¡£
ͼ1 OFDM»ù´øÐźŴ¦ÀíÔÀíͼ
¡¡¡¡ÔÚ·¢Éä¶Ë£¬Ê×ÏȶԱÈÌØÁ÷½øÐÐQAM»òQPSKµ÷ÖÆ£¬È»ºóÒÀ´Î¾¹ý´®²¢±ä»»ºÍIFFT±ä»»£¬ÔÙ½«²¢ÐÐÊý¾Ýת»¯Îª´®ÐÐÊý¾Ý£¬¼ÓÉϱ£»¤¼ä¸ô£¨Óֳơ°Ñ»·Ç°×º¡±£©£¬ÐγÉOFDMÂëÔª¡£ÔÚ×é֡ʱ£¬Ðë¼ÓÈëͬ²½ÐòÁкÍÐŵÀ¹À¼ÆÐòÁУ¬ÒÔ±ã½ÓÊն˽øÐÐÍ»·¢¼ì²â¡¢Í¬²½ºÍÐŵÀ¹À¼Æ£¬×îºóÊä³öÕý½»µÄ»ù´øÐźš£
¡¡¡¡µ±½ÓÊÕ»ú¼ì²âµ½Ðźŵ½´ïʱ£¬Ê×ÏȽøÐÐͬ²½ºÍÐŵÀ¹À¼Æ¡£µ±Íê³Éʱ¼äͬ²½¡¢Ð¡Êý±¶ÆµÆ«¹À¼ÆºÍ¾ÀÕýºó£¬¾¹ýFFT±ä»»£¬½øÐÐÕûÊý±¶ÆµÆ«¹À¼ÆºÍ¾ÀÕý£¬´ËʱµÃµ½µÄÊý¾ÝÊÇQAM»òQPSKµÄÒѵ÷Êý¾Ý¡£¶Ô¸ÃÊý¾Ý½øÐÐÏàÓ¦µÄ½âµ÷£¬¾Í¿ÉµÃµ½±ÈÌØÁ÷¡£
¡¡¡¡ÕâÀï½öÌÖÂÛÈí¼þ¹¦ÄÜÄ£¿é£¬¾ßÌåËã·¨²»ÔÚ´ËÉæ¼°¡£
¡¡¡¡2 Ó²¼þ½á¹¹
¡¡¡¡OFDMµ÷Öƽâµ÷Óë³£¹æµ÷Öƽâµ÷Ïà±È£¬ËùÐèµÄÔËËãÁ¿´ó£¬ÓÈÆäÊǵ±ÏµÍ³Ñ¡ÓõÄ×ÓÔز¨¸öÊý¶àʱ£¬½öÔÚ·¢Éä¶ËµÄIFFT±ä»»ºÍ½ÓÊն˵ÄFFT±ä»»ËùÐèµÄʱ¼ä¾ÍºÜ³¤¡£Í¨³£Ê¹ÓÃFPGAºÍ¸ßËÙµÄDSP½â¾ö¸ÃÎÊÌâ¡£ÓÉÓÚÔÚ½ÓÊն˻¹ÒªÍê³ÉÐźÅÍ»·¢¼ì²â¡¢Í¬²½ºÍƵƫУÕýµÈÊý×ÖÐźŴ¦Àí£¬ËùÒÔ½ÓÊն˶ÔʵʱÐÔÒªÇó¸ü¸ß¡£ÔÚ¸ÃϵͳÖУ¬Ê¹ÓÃFPGAÍê³ÉÐźŵÄÍ»·¢¼ì²âºÍ¶¨Ê±£¬DSPÍê³ÉFFT/IFFT±ä»»ºÍQAM/QPSKµ÷Öƽâµ÷¡£
¡¡¡¡±¾ÏµÍ³Ö÷ÒªÓÉ4²¿·Ö×é³É£º DSP¡¢FPGA¡¢Õý½»Êý×ÖÉϱäƵÆ÷£¨Quadrature Digital Upconverter£©¡¢Õý½»Êý×ÖϱäƵÆ÷£¨Quadrature Digital Downconverter£©¡£ÏµÍ³Ó²¼þ½á¹¹Èçͼ2Ëùʾ¡£Í¼ÖУ¬D±íʾÊý¾Ý×ÜÏߣ¬A±íʾµØÖ·×ÜÏߣ¬C±íʾ¿ØÖÆ×ÜÏߣ¬ L±íʾÁ´Â·¿ÚÊý¾ÝÏߣ¬ ×ÖĸºóÃæµÄÊý×Ö±íʾ×ÜÏßµÄλÊý¡£50 MHz¾§ÕñΪÁ½Æ¬DSP¼°FPGAÌṩʱÖÓÐźţ¬32.768 MHz¸ßÎȶ¨¶È¾§ÕñΪAD9857ºÍAD6654Ìṩ¸ßÖÊÁ¿µÄʱÖÓÐźš£¸´Î»Ð¾Æ¬MAX6708¿ØÖÆDSP¡¢FPGA¡¢AD9857¡¢AD6654ºÍST16C550µÄ¸´Î»¡£
ͼ2ϵͳӲ¼þ½á¹¹
¡¡¡¡DSPÍê³ÉQAM»òQPSKµÄµ÷Öƽâµ÷ºÍFFT/IFFT±ä»»¡£ÏµÍ³ËùʹÓõÄDSP[2]ÊÇADI¹«Ë¾µÄTiger sharc TS101¡£¸ÃDSP¾ßÓÐÒÔÏÂÌØÐÔ£º ×î¸ß¹¤×÷ƵÂÊΪ300 MHz£¬3.3 nsÖ¸ÁîÖÜÆÚ£»6 MBƬÄÚSRAM£»2¸ö¼ÆËãÄ£¿é£¬Ã¿¸öÄ£¿é¶¼ÓÐ1¸öALU¡¢1¸ö³Ë·¨Æ÷¡¢1¸öÒÆλ¼Ä´æÆ÷ºÍ1¸ö¼Ä´æÆ÷×飻2¸öÕûÐÍALU£¬ÓÃÀ´ÌṩѰַºÍÖ¸Õë²Ù×÷£»14¸öDMA¿ØÖÆÆ÷£»1149.1 IEEE JTAG¿Ú¡£¶ÔÓÚOFDM»ù´ø´¦Àí£¬¸ÃDSP×î´óµÄÌصãÊÇ£º ½øÐÐ256µãµÄ¸´ÊýFFT±ä»»£¬½öÐè3.67 ¦Ìs¡£
¡¡¡¡Õý½»Êý×ÖÉϱäƵÆ÷²ÉÓÃADI¹«Ë¾µÄAD9857¡£AD9857[34]×î¸ß¹¤×÷ƵÂÊΪ200 MHz,Êä³öÖÐƵƵÂÊ·¶Î§Îª0~80 MHz£»ÄÚ²¿¼¯³É°ë´øÂ˲¨Æ÷¡¢CIC(Cascaded Integrator Comb)Â˲¨Æ÷£¬ ·´SINCÂ˲¨Æ÷ºÍ¸ßËÙµÄ14λÊý/ģת»»Æ÷£¬ÆäºËÐÄÊÇÒ»¸öÏàλÁ¬ÐøµÄÖ±½ÓÊý×ÖƵÂʺϳÉÆ÷DDS (Direct Digital Synthesizer)¡£Ôڸ÷½°¸ÖУ¬AD9857¹¤×÷ÔÚÕý½»µ÷ÖÆģʽ£¬Æä32λƵÂÊ¿ØÖÆ×ÖʹÊä³öƵÂʵÄ×î¸ß¾«È·¶ÈΪ£ºSYSCLK(ϵͳʱÖÓ)³ýÒÔ232¡£
¡¡¡¡Õý½»Êý×ÖϱäƵÆ÷²ÉÓÃADI¹«Ë¾µÄAD6654¡£AD6654[5]ÄÚ²¿¼¯³ÉÁËÒ»¸ö14λ¡¢92.16 MspsµÄÄ£/Êýת»»Æ÷ºÍ4/6ͨµÀµÄÊý×ÖϱäƵÆ÷¡£Ã¿¸öͨµÀ¿É¶ÀÁ¢ÅäÖá£Êý×ÖϱäƵÄÚ²¿¼¯³ÉÁËƵÂʱ任Æ÷¡¢¿É±à³Ì¼¶ÁªÊá×´Â˲¨Æ÷£¨CIC£©¡¢2¸öÂ˲¨Æ÷×éºÍÊý×Ö×Ô¶¯ÔöÒæ¿ØÖÆ¡£ÆäÖУº ƵÂʱ任ÊÇͨ¹ý32λÊý¿ØÕñµ´Æ÷ʵÏֵģ»CICʵÏÖ1~32±¶µÄ³éÈ¡£»2¸öÂ˲¨Æ÷×é°üÀ¨FIRÂ˲¨Æ÷ºÍ2±¶³éÈ¡µÄ°ë´øÂ˲¨Æ÷¡£ÊäÈëµÄÖÐƵģÄâÐźž¹ýADCºÍƵÂʱ任ºó£¬Ê¹ÓÃÂ˲¨Æ÷×é½øÐÐÂ˲¨ºÍ³éÈ¡£¬×îºó²¢ÐÐÊä³öÕý½»»ù´øÊý×ÖÐźš£ÊäÈëÖÐƵÐźÅƵÂÊ×î¸ß¿Éµ½200 MHz£¬´Ëʱ£¬Ê¹ÓÃÇ·²ÉÑù¼¼Êõ¡£
¡¡¡¡3 ²ÎÊýÉè¼Æ¼°µ÷ÖÆ
¡¡¡¡ÐźŲ¨ÐÎ×÷Õß²ÉÓÃPCB°Ë²ã°åÉè¼Æ£¬ÊµÏÖÁ˸ÃϵͳµÄÓ²¼þƽ̨£¬²¢ÔÚ´Ëƽ̨»ù´¡ÉÏʵÏÖÁ˸ßËÙOFDM´«ÊäºÍ³£¹æµ¥Ôز¨µ÷Öƽâµ÷£¬ÐγÉÁËÒ»¸öͨÓÿí´ø¸ßËÙµ÷Öƽâµ÷ƽ̨¡£Éè¼ÆµÄÄ¿µÄÊÇÒªÔÚ¸Ãƽ̨ÉÏʵÏÖÏÖÓеÄÈ«²¿ÎïÀí²ãµÄËã·¨£¬ÌرðÊÇʵÏÖʵʱOFDM´«Êäϵͳ¡£¶ÔOFDMϵͳÌá³öµÄÖ¸±êÒªÇóÈç±í1ËùÁС£
¡¡¡¡Í¼3¸ø³öÁË32·×ÓÔز¨OFDMÔÚÉÏÊö²ÎÊýÉè¼ÆϵÄÒѵ÷ÐźŲ¨ÐΣ¨¼ûͼ3£¨a£©£©¼°Æ书ÂÊÆ×£¨¼ûͼ3£¨b£©£©¡£Í¼ÖÐ×ÓÔز¨µ÷ÖÆ·½Ê½ÎªQPSK£¬ÂëԪƵÂÊΪÖÐƵƵÂÊ36.864 MHz£¬´ø¿íÊÇ2.048 MHz¡£Í¼4¸ø³öÁËÒ»ÖÖµ¥Ôز¨µ÷ÖÆÖÆʽ£¨ÒÔ¦Ð/4QPSKΪÀý£©µÄʱÓò²¨ÐΣ¨¼ûͼ4£¨a£©£©¼°Æ书ÂÊÆ×£¨¼ûͼ4£¨b£©£©¡£ÁíÍ⣬Êý×Öµ÷ÖÆ·½Ê½µÄÂëԪƵÂÊ¿É´ï2 MHz£¨¼´¶ÔÓÚËÄÏàµ÷ÖÆ£¬±ÈÌØËÙÂÊ¿É´ï4 Mbps£»¶ÔÓÚ32QAMµ÷ÖÆ£¬±ÈÌØËÙÂÊ¿É´ï10 Mbps£©£¬ÇÒ×ÓÔز¨µ÷ÖÆ·½Ê½¡¢±ÈÌØ£¨»òÂëÔª£©ËÙÂÊ¡¢Êä³öÖÐƵ¾ù¿Éµ÷¡£
ͼ3 ʵ²âOFDM²¨ÐÎ
ͼ4 ʵ²â¦Ð/4-QPSK²¨ÐÎ
¡¡¡¡4 ½áÂÛ
¡¡¡¡±¾ÎÄËùÌá³öµÄ·½°¸ÓÐÒÔÏÂÌص㣺
¡¡¡¡¢Ù »ùÓÚË«DSPµÄ½á¹¹£¬¿É¹¤×÷ÔÚË«¹¤·½Ê½£¬Í¬Ê±Íê³ÉÐźŵķ¢ÉäºÍ½ÓÊÕ£»¹¤×÷ÔÚTDMA·½Ê½Ï»ò°ëË«¹¤Ê±£¬DSP¿Éͨ¹ýLink¿Ú½øÐиßËÙͨÐÅ£¬ÓÐÀûÓÚ²¢Ðд¦Àí£¬ÒÔÌá¸ß´«ÊäËÙÂÊ¡£DSPÀûÓÚ»ù´øÐźŵÄʵʱ´¦Àí£¬¿ÉÒÔʵÏÖ¸ßËÙµ÷Öƽâµ÷¡£
¡¡¡¡¢Ú ±äƵÆ÷¾ßÓÐƵÂÊ·Ö±æÂʸߡ¢ÆµÂʱ仯Ëٶȿ졢ÏàλÁ¬Ðø¡¢Ò×ÓÚÊý×Ö¿ØÖƵÈÌص㡣²ÉÓÃDSPºÍ±äƵÆ÷µÄ·½°¸£¬²»½ö¿ÉÒÔʵÏÖÄ£Äâµ÷Öƽâµ÷£¬¶øÇÒ¿ÉÒÔʵÏÖ¸÷ÖÖÊý×Öµ÷Öƽâµ÷£¬¼æÈÝ´«Í³µ÷Öƽâµ÷ºÍÐÂÐ͵÷Öƽâµ÷·½Ê½¡£
¡¡¡¡¢Û ÔÚDSPºÍ±äƵÆ÷Ö®¼äʹÓÃFPGA£¬ÊµÏÖÍ»·¢ÐźŵÄͬ²½²¶»ñ£¬¿ÉÒÔ·Öµ£DSPµÄ²¿·ÖÈÎÎñ£¬´Ó¶øÌá¸ßϵͳµÄʵʱÐÔ¡£
×÷ÕߣºÎ÷°²µç×ӿƼ¼´óѧ ÁõÅô ÕÔÁÖ¾¸ ÂÀ׿ À´Ô´£º¡¶µ¥Æ¬»úÓëǶÈëʽϵͳӦÓá·