רÀûÃû³Æ£ºÒ»ÖÖgnss½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·ÅϵͳµÄÖÆ×÷·½·¨
¼¼ÊõÁìÓò£º
±¾·¢Ã÷Éæ¼°GNSSÎÀÐǵ¼º½ÏµÍ³£¬ÓÈÆäÊÇÒ»ÖÖGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÌرðÊÊÓÃÓÚ»ùÓÚ¶àÄ£GNSSÎÀÐǵ¼º½ÏµÍ³½ÓÊÕ»úµÄÑз¢¡£
±³¾°¼¼Êõ£º
Ëæ×ÅÈ«Çò¸÷ÖÖµ¼º½ÎÀÐÇϵͳµÄ½¨³ÉÓëÍêÉÆ£¬ÎÀÐǵ¼º½¶¨Î»½ÓÊÕ»úµÄÓ¦Óù㷺£¬´Óµ¥Ò»µÄGPSʱ´úת±äΪ¶àÐÇ×ù²¢´æ¼æÈݵÄGNSSÐÂʱ´ú£¬µ¼ÖÂÎÀÐǵ¼º½ÌåϵȫÇò»¯ºÍÔöÇ¿¶àÄ£»¯¡£¶øGNSSϵͳµÄÖð²½ÍêÉÆºÍÔöÇ¿£¬Ê¹µÃ¼æÈݺͻ¥²Ù×÷³ÉΪÐµĹØ×¢µÄ½¹µãÖ®Ò»£¬¶øÈçºÎ´Ó×îÓŽǶȳä·ÖÀûÓúͷ¢»Ó¶àϵͳµÄÓÅÊÆ£¬ÊÇδÀ´·¢Õ¹µÄÒ»ÖÖÇ÷ÊÆ¡£»ùÓÚÈí¼þÎÞÏߵ缼ÊõµÄGNSS½ÓÊÕ»úÔÚ΢ÈõÐźŴ¦ÀíºÍ¶àÐźżæÈݵȷ½Ãæ¾ßÓкܴóµÄÓÅÊÆ¡£¶øÔÚGNSS½ÓÊÕ»úÖУ¬ÎªÁ˶Բ¶»ñ¡¢¸ú×Ù¼°¶¨Î»µÈËã·¨½øÐзÂÕæ¼°ÑéÖ¤£¬ÓÅ»¯Ëã·¨ÐÔÄÜ£¬³£ÐèҪʵʱµÄÕæÊµÊý¾ÝÈ¥¶ÔËã·¨½øÐзÂÕæ¼°²âÊÔ¡£·¢Ã÷ÄÚÈÝ
±¾·¢Ã÷ÌṩһÖÖGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÆäÄ¿µÄÊÇ£¬ÔÚPCƽ̨½øÐÐËã·¨¿ª·¢Ê±£¬ÐèÒªÕæÊµµÄÖÐÆµÊý¾ÝÀ´¶ÔËã·¨µÄ¹¦Äܼ°ÐÔÄܽøÐÐÑéÖ¤¡£¶øÔÚ½øÐнÓÊÕ»úµÄµ÷ÊÔÖУ¬ÎÒÃÇÐèÒªÁ¬ÐøµÄ¡¢Âú×ã»ù´øÒªÇóµÄÎÀÐÇÊý¾ÝÁ÷£¬¶øÊý¾Ý»Ø·Å¹¦ÄܵÄʵÏÖ£¬½â¾öÁ˱ØÐëÈ¥»§Íâ½øÐе÷ÊÔµÄÎÊÌ⣬ʹµÃ½ÓÊÕ»úµÄËã·¨¿ª·¢Óëµ÷ÊÔ£¬Ö»ÐèÒ»´Î¶ÌìÊý¾Ý²É¼¯£¬¶øºóÐø¼´¿ÉÈ«²¿ÔÚÊÒÄÚ½øÐУ¬Ìá¸ßÁË¿ª·¢Ð§ÂÊ£¬Ëõ¶ÌÁË¿ª·¢Ê±¼ä¡£
±¾·¢Ã÷Ä¿µÄÊÇÕâÑùʵÏÖµÄÒ»ÖÖGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÆäÌØÕ÷ÔÚÓÚϵͳ°üÀ¨ÌìÏß¡¢ÉèÓжàÄ£GNSS½ÓÊÕ»úоƬµÄÉäÆµÇ°¶Ëµ¥Ôª¡¢ÉèÓÐSPI³ÌÐòÄ£¿é¡¢´®²¢×ª»»Ä£¿é¡¢Òì²½FIFO»º³åÄ£¿é¡¢USB½Ó¿ÚʱÐòÄ£¿éÒÔ¼°×Ü״̬»úÄ£¿éµÄFPGA¿ØÖƵ¥Ôª¡¢ÉèÓй̼þ³ÌÐò¼°Çý¶¯³ÌÐòµÄUSB½Ó¿Ú´«Êäµ¥Ôª¼°ÉÏλ»ú£»ÌìÏßÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬SPI³ÌÐòÄ£¿éË«ÏòÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬ÉäÆµÇ°¶Ëµ¥ÔªÁ¬½ÓFPGA¿ØÖƵ¥Ôª£¬FPGA¿ØÖƵ¥ÔªË«ÏòÁ¬½ÓUSB ½Ó¿Ú´«Êäµ¥Ôª£¬USB½Ó¿Ú´«Ê䵥Ԫ˫ÏòÁ¬½ÓÉÏλ»ú£»ÉäÆµÇ°¶Ëµ¥ÔªÍ¨¹ýÌìÏß½ÓÊÕÉ䯵ÎÀÐÇÐźţ¬¾¹ýLNA¡¢»ìƵ¼°A/D²ÉÑùת»»ºóÊä³öÖÐÆµÐźţ¬SPI³ÌÐòÄ£¿é¶ÔÉäÆµÇ°¶Ëµ¥ÔªµÄ¹¤×÷ģʽ½øÐÐÅäÖã¬ÊµÏÖ¶Ô°üÀ¨GPS¡¢±±¶·2´ú¡¢GLANASS¼°Ù¤ÀûÂÔÔÚÄڵĶà¸öÎÀÐǵ¼º½ÏµÍ³µÄÇл»£¬FPGA¿ØÖƵ¥Ôª¶ÔÉäÆµÇ°¶Ëµ¥ÔªÊä³öµÄÖÐÆµÐźŽøÐд®²¢×ª»»ºó£¬±äΪ²¢ÐÐÊý¾Ý´æÈëµ½Òì²½FIFO»º³åÄ£¿é£¬USB½Ó¿ÚʱÐòÄ£¿é½«Òì²½FIFO»º³åÄ£¿éÖеÄÊý¾Ý¶Á³öºó£¬Ð´Èëµ½ USB½Ó¿Ú´«Êäµ¥ÔªÖУ¬ÉÏλ»ú³ÌÐò½«´ÓUSB½Ó¿Ú´«Êäµ¥Ôª¶ÁÈ¡µ½µÄÊý¾Ý´æ´¢µ½±¾µØµÄÓ²ÅÌÖС£Êý¾Ý»Ø·Åʱ£¬ÔÚÉÏλ»ú³ÌÐòµÄ¿ØÖÆÏ£¬½«¾¹ý¸ñʽת»»µÄÊý¾ÝÁ÷£¬ÔÚ»ù´øÊ±ÖӵĴ¥·¢Ï£¬ ´«Êäµ½»ù´øµÄÖÐÆµÊäÈë¶Ë¡£
ÉÏλ»úͨ¹ý³ÌÐò¶ÔFPGA¿ØÖƵ¥Ôª½øÐд«Êä¿ØÖÆÊ±£¬²ÉÓÃÒì²½I/O¼°¶àÏ̷߳½·¨ºÍÑ»·¶ÓÁе÷¶È·½·¨£¬±£Ö¤¸ßËÙÊý¾Ý´«ÊäÖеÄÁ¬ÐøÐÔ¼°ÊµÊ±ÐÔ£¬×îºó½«²É¼¯µ½µÄÊý¾Ý´æ´¢µ½±¾µØµÄÓ²ÅÌÖС£
µ±ÏµÍ³½øÐÐÊý¾Ý²É¼¯Ê±£¬ÎªÁ˱£Ö¤Êý¾ÝµÄÁ¬ÐøÐÔ£¬¾ÍÐèҪʹÉÏλ»úµÄ¶ÁÈ¡ËÙ¶È´óÓÚÉäÆµÇ°¶ËµÄдÈëËÙ¶È¡£Òò´Ë£¬USB½Ó¿Ú´«Êäµ¥ÔªÖеĹ̼þ³ÌÐòÅäÖÃÈçÏ´«ÊäËÙÂÊÉèÖÃΪ¸ßËÙ(High-Speed)£¬´«ÊäÀàÐÍÉèÖÃΪÅúÁ¿´«Êä(BULK´«Êä)£¬¹¤×÷ģʽÉèÖÃΪÒì²½SLAVEFIF0ģʽ¡£µ±ÏµÍ³½øÐÐÊý¾Ý»Ø·Åʱ£¬ÐèÒª½«USB¹Ì¼þ³ÌÐòÅäÖÃÈçÏ´«ÊäËÙÂÊÉèÖÃΪ¸ßËÙ(Full-Speed)£¬´«ÊäÀàÐÍÉèÖÃΪÅúÁ¿´«Êä(BULK´«Êä)£¬¹¤×÷ģʽÉèÖÃΪÒì²½ SLAVEFIF0ģʽ¡£Í¬Ê±£¬ÔÚÓ²¼þÁ¬½ÓÖУ¬Òì²½¶ÁÒý½ÅSLRDÐèÒªÖ±½ÓÁ¬½Óµ½»ù´øÊ±ÖÓµÄCLKÒý½Å¡£
±¾·¢Ã÷ÓëÏÖÓм¼ÊõÏà±È£¬ÓÐÒÔÏÂÓŵ㼰ÏÔÖøÐ§¹û
(1)ÔÚµ±Ç°¶à¸öÎÀÐǵ¼º½ÏµÍ³²¢´æµÄÇé¿öÏ£¬²ÉÓöàÄ£GNSS½ÓÊÕ»úоƬ£¬Í¨¹ý FPGAÖÐSPI³ÌÐò¶ÔÉäÆµÇ°¶ËоƬ½øÐÐģʽµÄÇл»£¬½â¾öÁËÒÔÍùµÄÊý¾Ý²É¼¯ÏµÍ³µ¥´¿Õë¶Ô GPSLlÐźŻòÕßÒ»ÖÖÐźŵÄÎÊÌ⣬¶àÄ£GNSS½ÓÊÕ»úоƬ£¬Íâ½ÓÌìÏßÓÐÔ´/ÎÞÔ´¿ÉÑ¡¡£Äܹ»²É¼¯¶à¸öÎÀÐÇϵͳÐźţ¬ÉäÆµÇ°¶ËµÄ¹¤×÷ģʽÇл»ÓÉSPI³ÌÐò½øÐÐÅäÖü´¿É£¬±ãÓÚÓû§½øÐÐÑ¡ÔñÐÔ¿ª·¢£¬Ó¦Ó÷¶Î§¹ã£¬¸üΪÒÔºóÓû§½øÐÐ¶à¼æÈÝϵͳ¿ª·¢Ìṩ±ãÀû¡£
(2)Êý¾Ý»º´æÄ£¿éÀûÓÃFPGAÄÚ²¿µÄǶÈëʽ´æ´¢Æ÷À´ÊµÏÖÒì²½FIFO£¬ÓëÏÖÓвÉÓÃÍⲿSRAMоƬ»º³åÏà±È£¬½ÚÊ¡Á˳ɱ¾£¬¶øÇÒ¸üÄÜ·½±ãµÄÐÞ¸ÄFIFOÉî¶È´óС£¬ÊÊÓ¦²»Í¬FPGAоƬ¡¢²»Í¬ÖÐÆµ²ÉÑùËÙÂʵij¡ºÏ£¬¸üÀûÓÚ³ÌÐòµÄͨÓÃÐÔ¡¢¿ÉÒÆÖ²ÐÔ¡£
(3)ÉÏλ»ú²¿·Ö²ÉÓöàÏ̼߳¼Êõ¼°Ñ»·¶ÓÁÐÇëÇó¼¼Êõ½â¾ö¸ßËÙÊý¾Ý´«ÊäÖÐÊý¾Ý¶ªÊ§µÄÎÊÌ⣬ʹµÃϵͳµÄ´«ÊäËٶȵõ½´ó·ù¶ÈÌáÉý£¬Êý¾Ý²É¼¯ÏµÍ³¿ÉÒÔ¹¤×÷ÔÚ¸ßËÙ¡¢ÊµÊ±µÄ³¡ºÏ£¬±ãÓÚ½øÐÐʵʱÈí¼þ½ÓÊÕ»úµÄÑз¢¡£
(4)ÔÚÊý¾Ý²É¼¯µÄ¹¦ÄÜ»ù´¡ÉÏ£¬Ôö¼ÓÁËÊý¾Ý»Ø·Å£¬Ó²¼þÎÞÐèÈκθ͝£¬Ö»ÐèÐÞ¸ÄÉÏλ»ú³ÌÐò¼°¹Ì¼þÇý¶¯³ÌÐò£¬¼´¿ÉʵÏÖÖÐÆµÊý¾Ý»Ø·Å¡£ÓëͬÀàÖ»Óвɼ¯¹¦Äܵį½Ì¨Ïà±È£¬¹¦Äܸü¼ÓÇ¿´ó£¬ÐԼ۱ȸü¸ß¡£ÎªÓû§½øÐнÓÊÕ»ú»ù´øËã·¨¡¢µ¼º½½âË㿪·¢ÌṩÁËʵʱ¡¢Îȶ¨µÄÖÐÆµÐźÅÁ÷£¬Ê¹µÃÕû¸öÑз¢¹ý³ÌÖ®³õ£¬Ö»Ðè½øÐÐÒ»´ÎÊÒÍâ²É¼¯£¬ºóÐøÊµ¼ÊµÄ½ÓÊÕ»úµ÷ÊÔÍêÈ«¿ÉÔÚÊÒÄÚ½øÐУ¬½ÚÊ¡Á˵÷ÊÔʱ¼ä£¬Ìá¸ßÁË¿ª·¢Ð§ÂÊ¡£
ͼ1ÊDZ¾·¢Ã÷µÄÔÀí¿òͼ2ÊDZ¾·¢Ã÷µÄFPGAÓëÉäÆµÇ°¶ËоƬ½Ó¿ÚÔÀíͼ3ÊDZ¾·¢Ã÷µÄFPGAоƬ²¿·Ö½Ó¿ÚÔÀíͼ4ÊDZ¾·¢Ã÷µÄFPGAÓëUSBоƬ½Ó¿ÚÔÀíͼ5ÊDZ¾·¢Ã÷µÄFPGA³ÌÐòÄÚ²¿¸÷Ä£¿éRTL¼¶ÔÀíͼ6ÊDZ¾·¢Ã÷µÄFPGA³ÌÐòÖеÄ×Ü״̬»úÄ£¿é×´Ì¬×ªÒÆÍ¼7ÊDZ¾·¢Ã÷µÄÉäÆµÇ°¶Ëµ¥ÔªµÄ¹¤×÷ģʽÇл»SPIʱÐòͼ8ÊDZ¾·¢Ã÷µÄUSBоƬ¹Ì¼þ³ÌÐòÁ÷³Ìͼ9ÊDZ¾·¢Ã÷µÄÉÏλ»úÓ¦ÓóÌÐòÁ÷³Ìͼ¡£
¾ßÌåʵʩ·½Ê½
Èçͼ1Ëùʾ£¬±¾·¢Ã÷Ϊ»ùÓÚ¶àÄ£GNSSÎÀÐǽÓÊÕоƬ¡¢FPGAоƬ¡¢USBоƬ¡¢ÉÏλ»úµÄ¶àÄ£GNSSÖÐÆµÊý¾Ý²É¼¯ºÍ»Ø·Åƽ̨£¬¹¹³É°üÀ¨ÉäÆµÇ°¶Ëµ¥Ôª¡¢FPGA¿ØÖƵ¥Ôª¡¢USB½Ó¿Ú´«Êäµ¥Ôª¼°ÉÏλ»ú²¿·ÖµÄϵͳ¡£
ÆäÖУ¬FPGAÄÚ²¿µÄSPI³ÌÐòµ¥¶À×÷Ϊһ¸öÄ£¿éÓëÉäÆµÇ°¶Ëµ¥ÔªË«ÏòͨÐÅ£¬Íê³ÉÉäÆµÇ°¶Ë¹¤×÷ģʽµÄÇл»¡£Êý¾Ý²É¼¯¹¦ÄÜÖУ¬FPGA¿ØÖƵ¥ÔªÄÚ²¿°üº¬ËĸöÄ£¿é´®²¢×ª»»Ä£¿é¡¢Òì²½FIFO»º³åÄ£¿é¡¢USB½Ó¿ÚʱÐòÄ£¿éÒÔ¼°×Ü״̬»ú(FSM)Ä£¿é¡£ÉäÆµÇ°¶Ëµ¥Ôªµ¥ÏòÁ¬½Óµ½´®²¢×ª»»Ä£Ä£¿é£¬ºóÐøÎªÒì²½FIFO»º³åÄ£¿é¡¢USB½Ó¿ÚʱÐòÄ£¿é¡¢×Ü״̬»úÄ£¿é¡£FPGA ÓëUSBоƬ˫ÏòÁ¬½Ó¡£USBоƬÓëÉÏλ»úҲΪ˫ÏòͨÐÅ¡£Æä¹¤×÷Á÷³ÌÈçÏÂ
Ê×ÏÈ£¬ÔÚÉÏλ»úÖÐÉèÖÃÒª¶ÁÈ¡µÄÊý¾Ý×ÜÁ¿£»½Ó×Å£¬ÉÏλ»úͨ¹ý¿ØÖÆ´«Êä¶Ëµã0·¢ËÍ¿ªÊ¼ÃüÁʹUSBоƬµÄPA. 7Òý½ÅÊä³ö¸ßµçƽ¡£FPGAоƬ¶ÔUSBоƬµÄPA. 7Òý½ÅÒ»Ö±½øÐÐÂÖѯ£¬Ò»µ©¼ì²âµ½¸ßµçƽÐźţ¬¾Í¿ªÊ¼½«ÉäÆµÇ°¶ËоƬµÄMAGºÍSIGNÐźÅͨ¹ý´®²¢×ª»»ºÍ»º³å£¬²¢Í¨¹ýUSB½Ó¿ÚʱÐòÄ£¿éÓëUSBоƬ½øÐе¥Ïò´«Êä¡£ÎÒÃÇÁîµØÖ·±äÁ¿AddrΪ¡°2¡±£¬ ¾Í¿Éͨ¹ýFD[15:0]½«²¢ÐеÄÊý¾Ý±£´æµ½USBоƬµÄEP6¶ËµãIN»º³åÇøÖС£µ±»º³åÇøÂúºó£¬ FLAG_FULLÒý½ÅµÄµçƽÀµÍ£¬²¢½«Êý¾Ý´«Êäµ½PCÖÐͬʱ֪ͨÉÏλ»ú¶ÁÈ¡Êý¾Ý¡£ÉÏλ»úÔÚÊÕµ½USBоƬ·¢À´µÄÒì²½I/OµÄÇëÇóºó£¬ÔÝÍ£µ±Ç°µÄỊ̈߳¬½«USBоƬÖеÄÊý¾Ý¶ÁÈ¡²¢±£´æµ½±¾µØÓ²ÅÌÖС£USBоƬ¼ì²âµ½Êý¾Ý±»¶ÁÈ¡ºó£¬ÁîFLAG_FULLÒý½ÅÖÃΪ¸ßµçƽ£¬½Ó×ÅÆô¶¯ÏÂÒ»´ÎµÄд¶Ëµã»º³åÇø²Ù×÷¡£ÕâÑùÑ»·Íù¸´£¬µ±¶ÁÈ¡µ½µÄÊý¾Ý×ÜÁ¿´ïµ½Ô¤Ïȹ涨µÄÒªÇ󣬾ÍÍê³ÉÁËÒ»´ÎÍêÕûµÄÖÐÆµÊý¾Ý²É¼¯¡£
Èçͼ2Ëùʾ£¬¶àÄ£ÉäÆµÇ°¶ËоƬÓëFPGAµÄÒý½Å½Ó¿Ú°üº¬6¸öÒý½Å¡£ÆäÖУ¬Ç°3¸öΪ SPI×ÜÏßµÄÒý½Å£¬Ê£Óà3¸öΪÖÐÆµÊý¾ÝÒý½Å¡£E_CS´ú±íSPI×ÜÏßÖеÄSCS£¬E_CLKΪSPI×ÜÏßÖеÄSCLK£¬E_DATAΪSPI×ÜÏßÖеÄË«ÏòÒý½ÅSDA¡£DO¡¢Dl·Ö±ð´ú±íÖÐÆµÊý¾Ý·ù¶È(MAG) ÓëÏàλ(SIGN)ÐźŵÄÒý½Å¡£RF2_CLKΪÉäÆµÇ°¶ËÊä³öµÄ²ÉÑùƵÂÊ£¬ÎªFPGAоƬÌṩϵͳʱÖÓ¡£
Èçͼ3Ëùʾ£¬FPGAоƬ²ÉÓÃALTERA¹«Ë¾µÄCyclone IIIϵÁÐоƬ¡ª¡ª EP3C40Q240C8¡£¸ÃÆ÷¼þ°üº¬39600¸öÂß¼µ¥Ôª£¬×ܵÄÄÚÖÃRAMΪ1161216 Bits¡£ÄÚÖÃǶÈëʽ³Ë·¨Æ÷256¸ö£¬PLLÓÐ4¸ö£¬ºËÐĵçѹ1.2V¡£·â×°²ÉÓÃPQFP¡£×ܵÄÒý½ÅÊýÓÐM0£¬ÆäÖУ¬×î´ó¿ÉÓÃI/O ¿ÚÊÇ120¸ö¡£¾ßÌåµÄÒý½Å¹¦ÄÜΪÉäÆµÇ°¶ËµÄRF2_CLK½ÓFPGAоƬµÄ33ºÅÒý½Å£¬D1¡¢DO½Ó37¡¢38ºÅÒý½Å£¬E_DATA¡¢E_CLK_¼°E_CS·Ö±ð½Ó39¡¢41¡¢43ºÅÒý½Å¡£USBоƬµÄ FD15¡¢FD14¼°FD13½Ó56¡¢55¡¢52ºÅÒý½Å£¬SLRD½Ó57ºÅÒý½Å¡£ÆäÓàÒý½ÅΪ´®ÐÐFLASH´æ´¢Æ÷µÄÒý½Å¼°µçÔ´VCCºÍµØGND¡£
Èçͼ4Ëùʾ£¬USBоƬ²ÉÓÃÒµ½çÖøÃûµÄCypress¹«Ë¾EZ-USB FX2ϵÁÐоƬ¡ª¡ª CY7C68013A¡£¸ÃоƬÖ÷Òª°üÀ¨USB2. 0ÊÕ·¢Æ÷¡¢´®ÐнӿÚÒýÇæ(SIE)¡¢ÔöÇ¿ÐÍ8051¡¢8. 5KBµÄ RAM¡¢4KµÄFIFO´æ´¢Æ÷¡¢I/O¡¢Êý¾Ý×ÜÏß¡¢µØÖ·×ÜÏߺͼ¯³ÉµÄ4¸ö»º³åÇø¡£ÔÚ±¾·¢Ã÷ƽ̨ÖУ¬Í¨¹ý¶ÔUSBоƬÖй̼þ³ÌÐòµÄÅäÖã¬ÍⲿÂß¼¿ÉÒÔ¶ÔÕâЩ¶ËµãFIFO»º³åÇø½øÐжÁ»òд²Ù×÷¡£ ÔÚ¸ÃģʽÏ£¬USBоƬÓëFPGAоƬµÄͨÐÅÒý½ÅΪ
FIF0ADR[1:0]ΪоƬ¶ËµãÑ¡ÔñµØÖ·Ïߣ¬µ±FIF0ADR[1:0]Ϊ00ʱ£¬Ñ¡Ôñ¶Ëµã2 £»µ±Îª10ʱ£¬Ñ¡Ôñ¶Ëµã6;
FLAGA¡¢FLAGB¡¢FLAGCºÍFLAGDΪ¿ÕÂú±ê־룬ÓÃÀ´Ö¸Ê¾FIF0ADR[1:0]ËùÖ¸¶ËµãµÄ»º³åÇøµÄ¿ÕÂú״̬£»
SLOEºÍSLRDΪUSBоƬµÄÊä³öʹÄÜÒý½ÅºÍ¶ÁÒý½Å£¬SLWRΪдÒý½Å£¬PKENDΪFPGA ʹÄÜÇ¿ÖÆÒ»¸öUSBµÄINÊý¾Ý°üÒý½Å£¬SLCS´ú±íƬѡ£¬FD[15:0]Ϊ˫ÏòÊý¾Ý×ÜÏߣ»
SCL¡¢SDAΪEEPROMÒý½Å£¬ÓÃÀ´½øÐй̼þ³ÌÐòµÄÏÂÔØºÍö¾Ù¡£
Èçͼ5Ëùʾ£¬ÎªFPGAÄÚ²¿³ÌÐòµÄRTLÊÓͼ¡£FPGA¿ØÖƵ¥Ôª°üÀ¨4¸öÄ£¿é£¬·Ö±ðΪ´®²¢×ª»»Ä£¿é¡¢Òì²½FIFO»º³åÄ£¿é¡¢USB½Ó¿ÚʱÐòÄ£¿éÒÔ¼°×Ü״̬»úÄ£¿é¡£ÉäÆµÇ°¶ËоƬµÄÊä³ö²ÉÑùƵÂÊΪ16. 368M£¬¸ñʽΪ2bitµÄSIGNºÍMAGÐźš£´®²¢×ª»»Ä£¿éÀûÓÃÒÆÎ»Æ÷¼Ä´æÆ÷£¬½«´®ÐÐÊý¾ÝתΪ8Bit»òÕß16BitµÄ²¢ÐÐÊý¾Ý£¬Ìá¸ßϵͳ´«ÊäËÙ¶È¡£¶øÇÒ£¬»¹¼ÆÊý²úÉúÁËÒ»¸ö8·ÖƵµÄʱÖÓ£¬×÷ΪÒì²½FIFOÄ£¿éµÄдʱÖÓ¡£Òì²½FIFOÄ£¿éµÄ»º³åÇøÉî¶ÈΪ8K£¬Êý¾Ýλ¿íΪ16λ£¬Ð´Ê±ÖÓΪ2. 046M£¬¶ÁʱÖÓΪ16. 368M¡£Òì²½FIFOÄ£¿éµÄÉè¼ÆÖ÷ÒªÊÇ¿¼ÂÇÁË GNSSÊý¾Ý²É¼¯µÄÁ¬ÐøÐÔ¼°ÊµÊ±ÐÔ£¬ÕâÒ²Òâζ×ÅÒì²½FIFOµÄдʹÄÜÊÇÒ»Ö±ÓÐЧµÄ¡£Òò´Ë¶ÁËÙÂʱØÐëÒª´óÓÚдËÙÂÊ£¬Ö»ÓÐÕâÑù²ÅÄܱ£Ö¤Êý¾Ý²»¶ªÊ§¡£USB½Ó¿ÚʱÐòÄ£¿éÖ÷ÒªÍê³É¶ÔFPGA ÄÚÒì²½FIFOÖÐÊý¾ÝµÄ¶ÁÈ¡¼°¶ÔºóÐøUSBоƬ¶Ëµã6»º³åÇøµÄдÈëµÄ¹¦ÄÜ¡£
Èçͼ6Ëùʾ£¬ÊÇFPGA×Ü״̬»úÄ£¿éµÄ×´Ì¬×ªÒÆÍ¼¡£ËüÊÇ×îÖØÒªµÄ²¿·Ö¡£²»µ«ÐèÒª¶ÔÉÏλ»úµÄ¿ØÖÆÒý½Å½øÐÐÂÖѯ£¬Ò²Òª¿¼ÂÇÒì²½FIFO»º³åÄ£¿éµÄ¶ÁдÇëÇó£¬Í¬Ê±Ò²Òª¶ÔUSB оƬ¶Ëµã»º³åÇøµÄ¿ÕÂú±êÖ¾½øÐÐÅжϣ¬×ۺϿ¼ÂǺ󣬲ÅÄܶÔÒì²½FIFOµÄ¶Áд½øÐÐÖٲò¢¿ØÖÆUSB½Ó¿ÚʱÐòÄ£¿éÖеÄ×´Ì¬×ªÒÆ¡£
Èçͼ7Ëùʾ£¬ÉäÆµÇ°¶Ëµ¥ÔªµÄ¹¤×÷ģʽÇл»Ö÷ÒªÓÉSPIÄ£¿é³ÌÐòÍê³É¡£Ëü°üº¬3¸öÒý½Å¡£Æ¬Ñ¡ÒѾSCS¡¢Ê±ÖÓÒý½ÅSCLKÒÔ¼°Ë«ÏòÐźÅ×ÜÏßSDA¡£µ±SCSΪµÍµçƽʱ£¬SPI½Ó¿ÚÓÐЧ¡£SCSΪ¸ßµçƽʱ£¬ÉäÆµÇ°¶ËµÄSPIÄ£¿é²»ÏìÓ¦¡£ÔÚ¶ÁдʱÐòÖУ¬SDAµÄÊý¾ÝÊÇÔÚSCLK ʱÖÓµÄÉÏÉýÑØËø´æ£¬¶øÏ½µÑزÉÑù¡£Ã¿½øÐÐÒ»¶Á»òд²Ù×÷£¬¶¼±ØÐëÏÈ·¢SBitµÄ¿ØÖÆÃüÁȻºóΪ32BitµÄÊý¾Ý¡£Ö»ÊÇÔÚ¶Á²Ù×÷µÄʱºò£¬SDAÐèÒªÓÉÊä³öÒý½ÅΪÊäÈëÒý½Å£¬²¢¶ÁÈ¡SDAÉϵÄÊý¾Ýµ½FPGAÖС£
Èçͼ8Ëùʾ£¬USBоƬ¹Ì¼þ³ÌÐò»ùÓÚCypress¹«Ë¾ÌṩµÄ¿ª·¢°ü½øÐÐÐ޸Ķø³É¡£ Ö÷ÒªµÄÄÚÈÝÓÐÊ×ÏÈ£¬Ôö¼ÓÁË 1¸öÓû§×Ô¶¨Òå¿ØÖÆ´«Ê亯Êý£¬ÖÃUSBоƬµÄPA. 7Òý½ÅΪ¸ßµçƽ£¬ÒÔ´ËÀ´Æô¶¯FPGAµÄÔËÐС£Æä´Î£¬ÅäÖÃTDJnitOº¯Êý£¬Ê¹µÃUSB¹¤×÷ÓÚÒì²½Slave FIFO ģʽ£¬IN¶ËµãΪEP6£¬Bulk´«Ê䣬512×Ö½Ú/°ü£¬4ÖØ»º³å¡£OUT¶ËµãΪEP2£¬Bulk´«Ê䣬512 ×Ö½Ú/°ü£¬4ÖØ»º³å¡£AUTOIN = AUT00UT = 1,USBоƬ×Ô¶¯´¦Àí¶ËµãÊý¾ÝµÄÊäÈëºÍÊä³ö£¬×Ö³¤(WORDffIDE)Ϊ16λ»ò8λ¿ÉÑ¡¡£PA. 7Òý½ÅΪ1/0Êä³ö¿Ú£¬FPGA Ò»Ö±ÂÖѯ´ËÒý½Å¡£ÔÚ½øÐÐÊý¾Ý²É¼¯Ê±£¬¶Ëµã6´«ÊäËÙÂÊÅäÖÃΪHigh-Speed¡£ÔÚ½øÐÐÊý¾Ý»Ø·Åʱ£¬¶Ëµã2´«ÊäËÙÂÊÅäÖÃΪ Full-Speed¡£
Èçͼ9Ëùʾ£¬ÉÏλ»úÈí¼þ³ÌÐòÔÚ³õʼ»¯ºó½¨Á¢ÁË 2¸öÏ̡߳£Ö÷Ï̸߳ºÔðGUI½çÃæµÄÏìÓ¦£¬¹¤×÷ÕßÏß³ÌÔò¸ºÔðÊý¾ÝµÄ²É¼¯¼°´¦Àí¡£2¸öÏß³Ìе÷¹¤×÷£¬Ö÷ÒªÍê³É¶ÔUSBÉ豸(VID/PID)µÄ¼ì²â¡¢Æô¶¯/Í£Ö¹´«Êä²Ù×÷¡£µ±Ö÷³ÌÐòÔËÐеÄʱºò£¬ÏÈ´´½¨USBÁ¬½Ó£¬»ñÈ¡ USBÉ豸¾ä±úºÍ¶ËµãÖ¸Õ롣Ȼºó£¬µÈ´ýÓû§µã»÷¡°Æô¶¯´«Ê䡱°´Å¥À´Æô¶¯¹¤×÷ÕßÏ̡߳£ÔÚ¹¤×÷ÕßÏß³ÌÖУ¬²ÉÓÃÑ»·¶ÓÁÐÇëÇó£¬Ò»´ÎÐÔ½¨Á¢¡¢³õʼ»¯N¸ö»º³åÇø£¬²¢Á¬Ðø·¢ËÍN¸öÒì²½´«ÊäÇëÇó¡£ÕâÑù£¬µ±Êý¾ÝÀ´µÄʱºò£¬¿ÉÒÔÒ»Ö±¶ÔÊý¾Ý»º´æÇø½øÐÐд²Ù×÷¶øÎÞÐèÖжÏÉ豸´«Êä¡£ ¾ßÌåµÄ´«ÊäʵÏÖº¯Êý²ÉÓÃCypress¹«Ë¾ÌṩµÄCYAPI. lib¿âÎļþÖеÄBeginDataXferO¡¢ WaitDataXfer ()/FinishDataXfer ()µÈ3¸öº¯ÊýÀ´Íê³ÉÒì²½1/0´«ÊäµÄ·¢Æð¡¢µÈ´ýºÍ½ÓÊÕ²Ù×÷¡£µ±½ÓÊÕµÄ×ܵÄÊý¾ÝÁ¿´ïµ½Óû§Ô¤Ïȶ¨ÒåµÄÖµºó£¬¾ÍÍ˳öÑ»·£¬²¢½«»º³åÇøµÄÊý¾Ýдµ½Ó²Å̵ÄÎļþµ±ÖС£×îºóÊÍ·ÅËùÓеĻº³åÇø£¬½áÊøÒ»´ÎÊý¾Ý²É¼¯¡£
½øÐÐÊý¾Ý»Ø·Åʱ£¬Ó²¼þ·½Ã棬Ð轫SLRDÒý½Å½Óµ½»ù´øµÄʱÖÓ(CLK)Òý½Å£»Èí¼þ·½Ã棬ÐèҪͬʱÐÞ¸ÄUSB¹Ì¼þ³ÌÐòºÍÉÏλ»ú³ÌÐò¡£¹Ì¼þ³ÌÐòÖУ¬Ö»Ð轫´«ÊäÓõ½µÄ¶ËµãÓÉEP6¶Ëµã¸ÄΪEP2¶Ëµã£¬ÆäÓಿ·Ö±£³Ö²»±ä¼´¿É¡£ÉÏλ»ú³ÌÐòÖУ¬Ê×ÏÈ£¬ÀûÓÃÎļþº¯Êý¶ÁÈ¡±¾µØÓ²ÅÌÖÐÒѾ²É¼¯ºÃµÄÊý¾Ý£¬²¢·Åµ½Ò»¸ö»º³åÇøÖС£È»ºó£¬½«ÅúÁ¿´«ÊäµÄ¶ËµãÓÉEP6¶Ëµã¸ÄΪ EP2 ¶Ëµã£¬²¢½« BeginDataXferO¡¢WaitDataXfer () /FinishDataXfer ()µÈ 3 ¸öº¯ÊýÖеIJÎÊýÓÉIN¸ÄΪOUT¡£
ȨÀûÒªÇó
1.Ò»ÖÖGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÆäÌØÕ÷ÔÚÓÚϵͳ°üÀ¨ÌìÏß¡¢ÉèÓжàÄ£GNSS½ÓÊÕ»úоƬµÄÉäÆµÇ°¶Ëµ¥Ôª¡¢ÉèÓÐSPI³ÌÐòÄ£¿é¡¢´®²¢×ª»»Ä£¿é¡¢Òì²½FIFO»º³åÄ£¿é¡¢USB½Ó¿ÚʱÐòÄ£¿éÒÔ¼°×Ü״̬»úÄ£¿éµÄFPGA¿ØÖƵ¥Ôª¡¢ÉèÓй̼þ³ÌÐò¼°Çý¶¯³ÌÐòµÄUSB ½Ó¿Ú´«Êäµ¥Ôª¼°ÉÏλ»ú£»ÌìÏßÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬SPI³ÌÐòÄ£¿éË«ÏòÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬ÉäÆµÇ°¶Ëµ¥ÔªÁ¬½ÓFPGA¿ØÖƵ¥Ôª£¬FPGA¿ØÖƵ¥ÔªË«ÏòÁ¬½ÓUSB½Ó¿Ú´«Êäµ¥Ôª£¬USB½Ó¿Ú´«Ê䵥Ԫ˫ÏòÁ¬½ÓÉÏλ»ú£»ÉäÆµÇ°¶Ëµ¥ÔªÍ¨¹ýÌìÏß½ÓÊÕÉ䯵ÎÀÐÇÐźţ¬¾¹ýLNA¡¢»ìƵ¼°A/D²ÉÑùת»»ºóÊä³öÖÐÆµÐźţ¬SPI³ÌÐòÄ£¿é¶ÔÉäÆµÇ°¶Ëµ¥ÔªµÄ¹¤×÷ģʽ½øÐÐÅäÖã¬ÊµÏÖ¶Ô°üÀ¨ GPS¡¢±±¶·2´ú¡¢GLANASS¼°Ù¤ÀûÂÔÔÚÄڵĶà¸öÎÀÐǵ¼º½ÏµÍ³µÄÇл»£¬FPGA¿ØÖƵ¥Ôª¶ÔÉäÆµÇ°¶Ëµ¥ÔªÊä³öµÄÖÐÆµÐźŽøÐд®²¢×ª»»ºó£¬±äΪ²¢ÐÐÊý¾Ý´æÈëµ½Òì²½FIFO»º³åÄ£¿é£¬USB½Ó¿ÚʱÐòÄ£¿é½«Òì²½FIFO»º³åÄ£¿éÖеÄÊý¾Ý¶Á³öºó£¬Ð´Èëµ½USB½Ó¿Ú´«Êäµ¥ÔªÖУ¬ÉÏλ»ú³ÌÐò½«´ÓUSB½Ó¿Ú´«Êäµ¥Ôª¶ÁÈ¡µ½µÄÊý¾Ý´æ´¢µ½±¾µØµÄÓ²ÅÌÖУ¬Êý¾Ý»Ø·Åʱ£¬ÔÚÉÏλ»ú³ÌÐòµÄ¿ØÖÆÏ£¬½«¾¹ý¸ñʽת»»µÄÊý¾ÝÁ÷£¬ÔÚ»ù´øÊ±ÖӵĴ¥·¢Ï£¬´«Êäµ½»ù´øµÄÖÐÆµÊäÈë¶Ë¡£
2.¸ù¾ÝȨÀûÒªÇó1ËùÊöµÄGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÆäÌØÕ÷ÔÚÓÚÉÏλ»úͨ¹ý³ÌÐò¶ÔFPGA¿ØÖƵ¥Ôª½øÐд«Êä¿ØÖÆÊ±£¬²ÉÓÃÒì²½IO¼°¶àÏ̷߳½·¨ºÍÑ»·¶ÓÁе÷¶È·½·¨£¬±£Ö¤¸ßËÙÊý¾Ý´«ÊäÖеÄÁ¬ÐøÐÔ¼°ÊµÊ±ÐÔ£¬×îºó½«²É¼¯µ½µÄÊý¾Ý´æ´¢µ½±¾µØµÄÓ²ÅÌÖС£
3.¸ù¾ÝȨÀûÒªÇó2ËùÊöµÄGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÆäÌØÕ÷ÔÚÓÚµ±ÏµÍ³½øÐÐÊý¾Ý²É¼¯Ê±£¬USB½Ó¿Ú´«Êäµ¥ÔªµÄ¹Ì¼þ³ÌÐò¹¤×÷ÓÚHigh-Speed¡¢BULK´«Êä»òÒì²½ SLAVEFIF0ģʽ£¬Êý¾Ý»Ø·Åʱ£¬¸üÐÂUSB¹Ì¼þ³ÌÐò£¬Ê¹USB¶ÔÓ¦¹¤×÷ÓÚFull-Speed¡¢BULK´«Êä»òÒì²½SLAVEFIF0ģʽ£¬Òì²½¶ÁÒý½ÅSLRDÖ±½ÓÁ¬½Óµ½»ù´øÊ±ÖÓµÄCLKÒý½Å£»µ±ÏµÍ³½øÐÐÊý¾Ý²É¼¯Ê±£¬ÎªÁ˱£Ö¤Êý¾ÝµÄÁ¬ÐøÐÔ£¬ÒªÊ¹ÉÏλ»úµÄ¶ÁÈ¡ËÙ¶È´óÓÚÉäÆµÇ°¶ËµÄдÈëËÙ¶È£¬Òò´Ë£¬USB½Ó¿Ú´«Êäµ¥ÔªÖеĹ̼þ³ÌÐòÅäÖÃÈçÏ´«ÊäËÙÂÊÉèÖÃΪ¸ßËÙ£¬´«ÊäÀàÐÍÉèÖÃΪÅúÁ¿´«Ê䣬¹¤×÷ģʽÉèÖÃΪÒì²½SLAVEFIF0ģʽ£»µ±ÏµÍ³½øÐÐÊý¾Ý»Ø·Åʱ£¬ USB¹Ì¼þ³ÌÐòÅäÖÃÈçÏ´«ÊäËÙÂÊÉèÖÃΪ¸ßËÙ£¬´«ÊäÀàÐÍÉèÖÃΪÅúÁ¿´«Ê䣬¹¤×÷ģʽÉèÖÃΪÒì²½SLAVEFIF0ģʽ£¬Í¬Ê±£¬ÔÚÓ²¼þÁ¬½ÓÖУ¬Òì²½¶ÁÒý½ÅSLRDÐèÒªÖ±½ÓÁ¬½Óµ½»ù´øÊ±Ö CLKÒý½Å¡£
È«ÎÄÕªÒª
Ò»ÖÖGNSS½ÓÊÕ»úµÄÖÐÆµÊý¾Ý²É¼¯Óë»Ø·Åϵͳ£¬ÌìÏßÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬SPIÄ£¿éË«ÏòÁ¬½ÓÉäÆµÇ°¶Ëµ¥Ôª£¬ÉäÆµÇ°¶Ëµ¥ÔªÁ¬½ÓFPGA¿ØÖƵ¥Ôª£¬FPGA¿ØÖƵ¥ÔªË«ÏòÁ¬½ÓUSB½Ó¿Ú´«Êäµ¥Ôª£¬USB½Ó¿Ú´«Ê䵥Ԫ˫ÏòÁ¬½ÓÉÏλ»ú£»ÉäÆµÇ°¶Ëµ¥Ôª½ÓÊÕÎÀÐÇÐźţ¬Êä³öÖÐÆµÐźţ¬SPIÄ£¿é¶ÔÉäÆµÇ°¶Ëµ¥ÔªµÄ¹¤×÷ģʽ½øÐÐÅäÖ㬽øÐжà¸öÎÀÐǵ¼º½ÏµÍ³µÄÇл»£¬FPGA¿ØÖƵ¥Ôª¶ÔÖÐÆµÐźŽøÐд®²¢×ª»»ºó´æÈëÒì²½FIFO»º³åÄ£¿é£¬USB½Ó¿ÚʱÐòÄ£¿é½«Òì²½FIFO»º³åÄ£¿éÖеÄÊý¾Ý¶Á³öºó£¬Ð´ÈëUSB½Ó¿Ú´«Êäµ¥Ôª£¬ÉÏλ»ú´ÓUSB½Ó¿Ú´«Êäµ¥Ôª¶ÁÈ¡µÄÊý¾Ý´æ´¢µ½±¾µØµÄÓ²ÅÌÖС£Êý¾Ý»Ø·Åʱ£¬ÔÚÉÏλ»ú¿ØÖÆÏ£¬½«¾¹ý¸ñʽת»»µÄÊý¾ÝÁ÷£¬ÔÚ»ù´øÊ±ÖӵĴ¥·¢Ï£¬´«Êäµ½»ù´øµÄÖÐÆµÊäÈë¶Ë¡£
Îĵµ±àºÅG01S19/23GK102508267SQ20111030711
¹«¿ªÈÕ2012Äê6ÔÂ20ÈÕ ÉêÇëÈÕÆÚ2011Äê10ÔÂ9ÈÕ ÓÅÏÈȨÈÕ2011Äê10ÔÂ9ÈÕ
·¢Ã÷ÕßÅËÊ÷¹ú, ÍõÇì, ³Â³å ÉêÇëÈË:¶«ÄÏ´óѧ