《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于FPGA的嵌入式系統(tǒng)USB接口設(shè)計
基于FPGA的嵌入式系統(tǒng)USB接口設(shè)計
國外電子元器件
楊志坤,曾博,湯國文 電子科技大學(xué)
摘要: 基于FPGA的嵌入式系統(tǒng)USB接口設(shè)計,摘要:設(shè)計基于FPGA的IP-BX電話應(yīng)用系統(tǒng),用于傳統(tǒng)的電話網(wǎng)絡(luò)(PSTN)與PC機之間的接口連接。USB2.0接口器件EZ-USB FX2 CY7C68013A-56工作在slave FIFO模式,為基于FPGA的嵌入式系統(tǒng)與PC機之間提供數(shù)據(jù)和命令通道,從
Abstract:
Key words :

摘要:設(shè)計基于FPGA的IP-BX電話應(yīng)用系統(tǒng),用于傳統(tǒng)的電話網(wǎng)絡(luò)(PSTN)與PC機之間的接口連接。USB2.0接口器件EZ-USB FX2 CY7C68013A-56工作在slave FIFO模式,為基于FPGA的嵌入式系統(tǒng)與PC機之間提供數(shù)據(jù)和命令通道,從而可滿足PC機與FPGA之間數(shù)據(jù)與命令的高速傳輸,實現(xiàn)PSTN與PC機之間的電話通信。硬件調(diào)試結(jié)果表明系統(tǒng)工作穩(wěn)定,通話質(zhì)量滿足要求。
關(guān)鍵詞:接口;FPGA;USB2.0;slave FIFO

    通用串行總線USB(Universal Serial Bus)是應(yīng)用于PC領(lǐng)域的接口技術(shù),已得到廣泛應(yīng)用。USB2.0已成為目前電腦中的標(biāo)準(zhǔn)擴(kuò)展接口。本系統(tǒng)設(shè)計的目的在于為公共交換電話網(wǎng)絡(luò)(PSTN)和PC機之間提供一個數(shù)字接口,設(shè)計中PC機是主機,基于FPGA的嵌入式系統(tǒng)是USB設(shè)備。該系統(tǒng)是IP-PBX的簡化系統(tǒng),大量工作由PC的服務(wù)器完成,而這里重點介紹以FPGA為控制核心的USB接口設(shè)計。

1 系統(tǒng)結(jié)構(gòu)設(shè)計
    該系統(tǒng)通過TRM(Telephone Response Module)和PC服務(wù)器實現(xiàn)PSTN網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)之間自由、高效通話。圖l為整個系統(tǒng)結(jié)構(gòu)示意圖。


    系統(tǒng)工作過程:當(dāng)有來電時,DAA向FPGA申請中斷。FPGA收到中斷后,使用USB的中斷傳輸向主機報告有外接來電,則PC的應(yīng)用軟件會提示用戶選擇摘機或拒絕。摘機后,F(xiàn)PGA在接收到命令后就會接通電話,然后語音數(shù)據(jù)通過USB的同步傳輸進(jìn)行雙向傳送。當(dāng)用戶向外撥號時,其過程與來電時的情況是相同的。

2 系統(tǒng)硬件模塊設(shè)計
2.1系統(tǒng)硬件框圖
    本設(shè)計采用FPGA作為核心控制器件,其控制對象是USB2.0接口器件EZ-USB FX2 CY7C68013A-56。圖2為EZ-USB器件工作在Slave FIFO模式下時FX2 USB和FPGA的典型電路連接圖。


2.2 FPGA和USB簡介
    設(shè)計中的核心控制器件FPGA選用Altera公司的EP2C8Q208C8,而USB設(shè)備器件則選用Cypress公司的CY7C68013A-56。EP2C8Q208C8是Ahera Cyclone II系列器件中的一種,Cyclone II FPGA是基于Stratix II的90 nm工藝生產(chǎn)的低成本FPGA。Cyclone II FPGA的應(yīng)用主要定位在終端市場,如消費類電子、計算機、工業(yè)和汽車等領(lǐng)域。EP2C8Q208C8內(nèi)部有2個鎖相環(huán)(PLL)和8個全局時鐘網(wǎng)絡(luò),8 256個邏輯單元(LE)個,36個M4K RAM,18個乘法器模塊,可用I/O數(shù)138個。EP2C8Q208C8具有低成本、高性能、低功耗和對IP-PBX系統(tǒng)的可擴(kuò)展性(足夠多的I/O接口)的優(yōu)點,因此這里選擇該器件作為系統(tǒng)的控制器件。
    CY7C68013A-56器件是第1個包含USB2.0的集成微控制器,其內(nèi)部集成有1個增強型的8051,1個智能USB串行接口引擎(SIE),1個USB數(shù)據(jù)收發(fā)器,3個8位。I/O、16位地址線、8.5 KB RAM和4 KB的FIFO等。增強型8051內(nèi)核完全與標(biāo)準(zhǔn)805l兼容,而性能可達(dá)到標(biāo)準(zhǔn)805l的3倍以上。圖3為CY7C68013A-56的結(jié)構(gòu)框圖。


    CY7C68013A器件在數(shù)據(jù)傳輸時利用4 KB的FIFO,包含7個端點:EPOIN/OUT,EPlIN,EPlOUT,EP2,EP4,EP6,EP8。其中EPO、EPIIN和EPlOUT是3個64 B的緩沖端點,只能被固件訪問,EP0是默認(rèn)的數(shù)據(jù)輸入輸出端口緩存,默認(rèn)工作于控制傳輸,EPlIN和EPlOUT是獨立的64 B緩存,可以配置成塊傳輸、中斷傳輸或同步傳輸。端點2、4、6、8是大容量高寬帶的數(shù)據(jù)傳輸端點,可配置為各種帶寬以滿足實際需求。端點2、6能配置成每幀成512 B或l 024 B,并可配置為2、3、4級,則EP2,EP6最大能被配置為4 KB的緩存;端點4、8則能配置為每幀512 B的緩存。

3 系統(tǒng)軟件設(shè)計
3.1 USB Firmware設(shè)計
    由于設(shè)計中使用FPGA控制USB設(shè)備進(jìn)行語音電話通信,所以在USB部分使用3種USB傳輸模式:控制傳輸、中斷傳輸、等時傳輸。控制傳輸用于實現(xiàn)設(shè)備枚舉主機的標(biāo)準(zhǔn)請求以及廠商自定義請求;中斷傳輸用于實現(xiàn)設(shè)備對主機的喚醒,是唯一的設(shè)備主動向主機發(fā)送數(shù)據(jù)的傳輸方式;等時傳輸用于實現(xiàn)語音數(shù)據(jù)的雙向同步傳輸。USB Firmware設(shè)計重點是語音的通信段。
    CY7C68013A具有PORTS、Slave FIFO、GPlF共3種工作模式。PORTS模式是最基本的數(shù)據(jù)傳輸方式,其數(shù)據(jù)傳輸需CPU直接參與,適于傳輸速率要求不高的場合;GPIF模式是主機方式,內(nèi)部主機控制端點FIFO;Slave FIFO模式是從機方式,外部控制器,如FPGA、DSP。應(yīng)用中使用異步FIFO方式,采用內(nèi)部48 MHz時鐘,自動方式,而固件程序的編寫則以Cypress公司提供的固件程序框架為基礎(chǔ),在其初始化函數(shù)中添加自己的配置代碼。
    在整個系統(tǒng)中,CY7C68013A的固件主要完成以下工作:初始化USB器件;作為USB接口與主機通信并傳輸數(shù)據(jù);利用CY7C68013A器件的Slave FlFO接口控制USB器件和外部控制器之間的數(shù)據(jù)傳輸。因此同件主程序比較復(fù)雜,除了上面的TD_lnit()初始化外,還需要大量函數(shù),但基本結(jié)構(gòu)相對簡單,包括3個過程:USB控制器的初始化;主函數(shù),包括處理標(biāo)準(zhǔn)設(shè)備請求的代碼;中斷處理,包括處理各種中斷的程序代碼。圖4為同件主程序流程。


3.2 USB驅(qū)動程序
    USB系統(tǒng)軟件由主機中的軟件和設(shè)備同件構(gòu)成。USB主機中的軟件主要包括USB設(shè)備驅(qū)動(USBDD)、USB總線驅(qū)動(USBD)和USB主控制器驅(qū)動(HCD)。
    USB設(shè)備驅(qū)動程序(或客戶驅(qū)動程序)處于最頂層,它支持特定設(shè)備類的驅(qū)動,負(fù)責(zé)與其對應(yīng)的USB設(shè)備進(jìn)行通信和讀寫控制,實現(xiàn)各個USB設(shè)備特殊的功能應(yīng)用。連接USB設(shè)備的每種類型的功能單元都必須具有客戶驅(qū)動程序。客戶驅(qū)動程序把USB設(shè)備看作是一個可被訪問的端點的集合。USB設(shè)備可以被控制并與其功能單元通信。USB設(shè)備驅(qū)動程序通過I/O請求包(IRP)向USB總線驅(qū)動程序發(fā)送請求。這些請求包將一個給定的傳輸初始化。這種傳輸可以來自于一個USB目標(biāo)設(shè)備或發(fā)送到USB設(shè)備。
    USB總線驅(qū)動(USBD)是在主機控制器驅(qū)動和USB設(shè)備驅(qū)動之間的模塊,它對應(yīng)USB協(xié)議的USBD,在Windows系統(tǒng)中由USBD.SYS模塊提供。它是在某一操作系統(tǒng)上對USB總線和協(xié)議提供支持的軟件,獨立于USB設(shè)備和USB設(shè)備驅(qū)動,并對它們進(jìn)行控制和提供統(tǒng)一編程接口。
    USB主控制器驅(qū)動程序(HCD)處于最底層,它負(fù)責(zé)對主機控制器進(jìn)行抽象和對USB提供低級支持。
3.3 PC端的軟件設(shè)計
    PC端的軟件設(shè)計采用面向?qū)ο蟪绦蛟O(shè)計,分為核心類(包括Provider,Data,Net)和應(yīng)用類(包括UI,Call,Record)。其中核心類提供對硬件、操作系統(tǒng)和網(wǎng)絡(luò)環(huán)境的支持,應(yīng)用類在核心類的基礎(chǔ)上提供對用戶操作的支持。Provider類定義對USB設(shè)備的讀寫操作,提供讀取數(shù)據(jù)方法(readusb())和寫數(shù)據(jù)方法(writeusb());Data類包括地址數(shù)據(jù)(Address)、音頻數(shù)據(jù)(Audio)和控制數(shù)據(jù)(Command)的定義,并提供數(shù)據(jù)的分解方法(Decompose())和組合方法(Compose());Net類提供對網(wǎng)絡(luò)的支持,包括網(wǎng)絡(luò)協(xié)議的選擇和數(shù)據(jù)的接收與發(fā)送。UI類提供對用戶界面的支持,包括窗口、對話框等,實現(xiàn)基本用戶框架與應(yīng)用入口;Call類提供通話功能;Record類則提供電話錄音功能;根據(jù)不同應(yīng)用要求,可擴(kuò)展其他應(yīng)用類。具體結(jié)構(gòu)如圖5所示。

 

4 結(jié)束語
    USB靈活的接口和可編程特性可簡化外部硬件的設(shè)計,提高系統(tǒng)可靠性。而USB2.O控制器CY7C68013A也廣泛應(yīng)用于許多數(shù)據(jù)傳輸領(lǐng)域。FPGA已成為通信、計算機、消費類電子產(chǎn)品等領(lǐng)域的基礎(chǔ)器件。這里所介紹的USB設(shè)備就是一個基于FPGA的嵌入式系統(tǒng),該系統(tǒng)軟硬件都具有模塊化的特性,易于改造成其他應(yīng)用場合的語音控制系統(tǒng)(DAA除外)。該設(shè)計的應(yīng)用可節(jié)省大量的人力、物力。具有較大的推廣意義和使用價值。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
夜夜嗨av一区二区三区网站四季av| 亚洲国产第一页| 日韩一区二区精品| 亚洲一区视频| 亚洲欧洲视频| 国内精品久久久久久久影视麻豆| 欧美日韩在线不卡一区| 美国十次了思思久久精品导航| 亚洲永久精品大片| 亚洲久久视频| 久久国内精品视频| 亚洲永久免费av| 日韩午夜中文字幕| 国产亚洲综合在线| 国产精品电影观看| 蜜桃av综合| 久久久精品tv| 午夜精品一区二区三区在线| 99日韩精品| 亚洲精品欧洲精品| 亚洲国产第一| 91久久线看在观草草青青| 91久久精品国产91性色tv| 亚洲国产日韩欧美| 亚洲精品视频在线观看免费| 日韩视频一区二区| 亚洲一区精彩视频| 亚洲综合国产激情另类一区| 中国日韩欧美久久久久久久久| 亚洲国产一区二区三区青草影视| 久久成人资源| 久久精品免费看| 欧美一区二区三区在线视频| 先锋亚洲精品| 欧美亚洲综合网| 欧美亚洲免费在线| 亚洲欧美另类国产| 亚洲男人的天堂在线aⅴ视频| 99日韩精品| 一区二区三区高清| 99国产一区二区三精品乱码| 亚洲免费av观看| 日韩亚洲视频在线| 99re国产精品| 夜夜夜久久久| 一区二区三区日韩在线观看| 在线观看日韩av| 狠狠色香婷婷久久亚洲精品| 国产真实乱子伦精品视频| 国产精品爱啪在线线免费观看| 美女视频一区免费观看| 亚洲午夜久久久久久久久电影院| 亚洲国产成人精品女人久久久 | 一区二区三区不卡视频在线观看| 99国内精品久久久久久久软件| 99亚洲视频| 在线视频欧美精品| 久久精品论坛| 欧美精品粉嫩高潮一区二区| 国产精品天美传媒入口| 亚洲福利国产| 亚洲一区二区三区视频| 亚洲高清不卡一区| 亚洲视频在线观看视频| 久久精品在这里| 欧美另类人妖| 欧美三区在线观看| 国产精品嫩草99av在线| 国产偷国产偷精品高清尤物| 国产精品扒开腿做爽爽爽视频| 国产精品一区二区在线观看| 国产一区二区三区免费在线观看| 在线播放国产一区中文字幕剧情欧美| 曰本成人黄色| 国产一区二区高清不卡| 亚洲国产欧美不卡在线观看| 一本久道久久综合狠狠爱| 亚洲免费影视第一页| 久久精品国产亚洲一区二区| 99re这里只有精品6| 亚洲欧美激情四射在线日| 久久精品国产免费| 欧美激情成人在线| 国产精品免费看| 伊人蜜桃色噜噜激情综合| 亚洲美女视频网| 午夜精品福利一区二区三区av| 亚洲国产欧美日韩| 亚洲午夜伦理| 久久亚洲春色中文字幕久久久| 欧美国产91| 欧美四级在线| 黄色成人在线| 亚洲性视频h| 亚洲人成在线影院| 午夜精品久久久久久久蜜桃app| 久久中文精品| 国产精品国产三级国产普通话蜜臀 | 亚洲欧美文学| 欧美高清影院| 国产网站欧美日韩免费精品在线观看| 亚洲国产欧美在线| 欧美一级片一区| 在线视频日韩| 老司机免费视频久久| 国产精品入口福利| 亚洲激情在线视频| 一区二区三区视频观看| 亚洲国产成人午夜在线一区| 亚洲欧美日韩网| 亚洲乱码一区二区| 欧美一区二区高清在线观看| 欧美经典一区二区三区| 欧美视频在线免费| 亚洲国产裸拍裸体视频在线观看乱了 | 一区二区亚洲| 亚洲欧美中文字幕| 亚洲婷婷国产精品电影人久久 | 久久亚洲电影| 国产乱码精品一区二区三区不卡| 亚洲精品欧美一区二区三区| 亚洲一区在线观看视频 | 国产午夜亚洲精品羞羞网站 | 99v久久综合狠狠综合久久| 久久不射电影网| 国产精品福利影院| 亚洲人成在线免费观看| 久久精品国内一区二区三区| 欧美在线亚洲在线| 国产精品美女黄网| 99精品视频一区| 一区二区三区四区五区视频 | 六月天综合网| 韩日精品视频| 午夜精品一区二区在线观看| 亚洲一区在线视频| 久久野战av| 国产精品成人一区| 亚洲精品国产精品国自产观看浪潮 | 欧美在线影院| 久久久久久国产精品mv| 国产女精品视频网站免费| 亚洲视频一区二区| 亚洲性人人天天夜夜摸| 欧美日韩国产在线观看| 亚洲精品久久久久久久久久久久 | 国产一区二区三区自拍| 亚洲欧美在线观看| 亚洲一二三区在线| 久久先锋影音| 尤物精品在线| 亚洲欧洲综合另类| 欧美gay视频| 国内精品久久久久影院色| 欧美一区二区三区在线播放| 久久精品在线观看| 国内精品一区二区| 欧美在线高清视频| 久久这里有精品视频| 黄色成人精品网站| 最新中文字幕亚洲| 欧美伦理在线观看| 激情五月综合色婷婷一区二区| 亚洲一区二区三区影院| 校园春色国产精品| 国产欧美日韩中文字幕在线| 欧美一级视频精品观看| 久久精品91久久香蕉加勒比| 国内精品视频在线观看| 亚洲国产成人精品久久久国产成人一区 | 久久国产一区二区| 国产亚洲精品久| 亚洲第一综合天堂另类专| 免费在线观看精品| 日韩视频免费观看| 午夜一区二区三区在线观看| 久久综合色综合88| 在线中文字幕不卡| 久久夜色撩人精品| 一区二区冒白浆视频| 久久综合狠狠综合久久激情| 亚洲视频导航| 欧美大片国产精品| 小嫩嫩精品导航| 欧美日韩国产三级| 久久精品日韩一区二区三区| 国产精品99免视看9| 亚洲国产精品v| 国产精品亚洲产品| 亚洲美女福利视频网站| 国产三区二区一区久久| 一区二区三区四区五区视频| 影音先锋日韩有码| 欧美一区二区三区在线看| 亚洲看片一区| 麻豆精品91| 欧美一区二区三区日韩视频| 国产精品爱久久久久久久| 日韩午夜电影| 在线不卡a资源高清|