亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的嵌入式系統(tǒng)USB接口設計

        2010-08-18 00:59:12楊志坤湯國文
        電子設計工程 2010年1期
        關鍵詞:設備系統(tǒng)設計

        楊志坤,曾 博,湯國文

        (電子科技大學 電子工程學院,四川 成都 611731)

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

        1 系統(tǒng)結構設計

        該系統(tǒng)通過 TRM (Telephone Response Module)和PC服務器實現PSTN網絡和Internet網絡之間自由、高效通話。圖1為整個系統(tǒng)結構示意圖。

        圖1 系統(tǒng)結構示意圖

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

        2 系統(tǒng)硬件模塊設計

        2.1 系統(tǒng)硬件框圖

        本設計采用FPGA作為核心控制器件[2],其控制對象是USB2.0接口器件EZ-USB FX2 CY7C68013A-56。圖2為EZUSB器件工作在Slave FIFO模式下時FX2 USB和FPGA的典型電路連接圖。

        圖2 系統(tǒng)硬件電路連接

        2.2 FPGA和USB簡介

        設計中的核心控制器件FPGA選用Altrea公司的EP2C8Q208C8,而USB設備器件則選用Cypress公司的CY7C68013A-56。EP2C8Q208C8是 Altera Cyclone II系列器件中的一種,Cyclone II FPGA是基于Stratix II的90 nm工藝生產的低成本FPGA。Cyclone II FPGA的應用主要定位在終端市場,如消費類電子、計算機、工業(yè)和汽車等領域。EP2C8Q208C8內部有2個鎖相環(huán)(PLL)和8個全局時鐘網絡,8 256個邏輯單元(LE)個,36個 M4K RAM,18個乘法器模塊,可用I/O數138個[3]。EP2C8Q208C8具有低成本、高性能、低功耗和對IP-PBX系統(tǒng)的可擴展性(足夠多的I/O接口)的優(yōu)點,因此這里選擇該器件作為系統(tǒng)的控制器件。

        CY7C68013A-56器件是第1個包含USB2.0的集成微控制器,其內部集成有1個增強型的8051,1個智能USB串行接口引擎(SIE),1個USB數據收發(fā)器,3個8位I/O、16位地址線、8.5 KB RAM和4 KB的FIFO等。增強型8051內核完全與標準8051兼容,而性能可達到標準8051的3倍以上[4]。圖3為CY7C68013A-56的結構框圖。

        圖3 CY7C68013A-56結構框圖

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

        3 系統(tǒng)軟件設計

        3.1 USB Firmware設計

        由于設計中使用FPGA控制USB設備進行語音電話通信,所以在USB部分使用3種USB傳輸模式:控制傳輸、中斷傳輸、等時傳輸??刂苽鬏斢糜趯崿F設備枚舉主機的標準請求以及廠商自定義請求;中斷傳輸用于實現設備對主機的喚醒,是唯一的設備主動向主機發(fā)送數據的傳輸方式;等時傳輸用于實現語音數據的雙向同步傳輸。USB Firmware設計重點是語音的通信段。

        CY7C68013A具有 PORTS、Slave FIFO、GPIF共 3種工作模式。PORTS模式是最基本的數據傳輸方式,其數據傳輸需CPU直接參與,適于傳輸速率要求不高的場合;GPIF模式是主機方式,內部主機控制端點FIFO;Slave FIFO模式是從機方式,外部控制器,如FPGA、DSP。應用中使用異步FIFO方式,采用內部48 MHz時鐘,自動方式,而固件程序的編寫則以Cypress公司提供的固件程序框架為基礎,在其初始化函數中添加自己的配置代碼。

        在整個系統(tǒng)中,CY7C68013A的固件主要完成以下工作:初始化USB器件;作為USB接口與主機通信并傳輸數據;利用CY7C68013A器件的Slave FIFO接口控制USB器件和外部控制器之間的數據傳輸。因此固件主程序比較復雜,除了上面的TD_Init()初始化外,還需要大量函數,但基本結構相對簡單,包括3個過程:USB控制器的初始化;主函數,包括處理標準設備請求的代碼;中斷處理,包括處理各種中斷的程序代碼。圖4為固件主程序流程。

        圖4 固件程序流程

        3.2 USB驅動程序

        USB系統(tǒng)軟件由主機中的軟件和設備固件構成。USB主機中的軟件主要包括USB設備驅動(USBDD)、USB總線驅動(USBD)和 USB 主控制器驅動(HCD)[5]。

        USB設備驅動程序(或客戶驅動程序)處于最頂層,它支持特定設備類的驅動,負責與其對應的USB設備進行通信和讀寫控制,實現各個USB設備特殊的功能應用。連接USB設備的每種類型的功能單元都必須具有客戶驅動程序。客戶驅動程序把USB設備看作是一個可被訪問的端點的集合,USB設備可以被控制并與其功能單元通信。USB設備驅動程序通過I/O請求包(IRP)向USB總線驅動程序發(fā)送請求。這些請求包將一個給定的傳輸初始化。這種傳輸可以來自于一個USB目標設備或發(fā)送到USB設備。

        USB總線驅動(USBD)是在主機控制器驅動和USB設備驅動之間的模塊,它對應 USB協(xié)議的USBD,在 Windows系統(tǒng)中由USBD.SYS模塊提供,它是在某一操作系統(tǒng)上對USB總線和協(xié)議提供支持的軟件,獨立于USB設備和USB設備驅動,并對它們進行控制和提供統(tǒng)一編程接口。

        USB主控制器驅動程序(HCD)處于最底層,它負責對主機控制器進行抽象和對USB提供低級支持。

        3.3 PC端的軟件設計

        PC端的軟件設計采用面向對象程序設計,分為核心類(包括 Provider,Data,Net)和 應用類(包括 UI,Call,Record)。其中核心類提供對硬件、操作系統(tǒng)和網絡環(huán)境的支持,應用類在核心類的基礎上提供對用戶操作的支持。Provider類定義對USB設備的讀寫操作,提供讀取數據方法(readusb())和寫數據方法(writeusb());Data 類包括地址數據(Address)、音頻數據(Audio)和控制數據(Command)的定義,并提供數據的分解方法(Decompose())和組合方法(Compose());Net類提供對網絡的支持,包括網絡協(xié)議的選擇和數據的接收與發(fā)送。UI類提供對用戶界面的支持,包括窗口、對話框等,實現基本用戶框架與應用入口;Call類提供通話功能;Record類則提供電話錄音功能;根據不同應用要求,可擴展其他應用類。具體結構如圖5所示。

        圖5 PC服務器端軟件框圖

        4 結束語

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

        [1]張念淮,江 浩.USB總線接口開發(fā)指南[M].北京:國防工業(yè)出版社,2001.

        [2]譚安菊,龔 彬.USB2.0控制器CY7C68013與FPGA接口的 VerilogHDL 實現[J].電子工程師,2007,33(7):52-55.

        [3]王 誠,吳繼華,范麗珍,等.Altera FPGA/CPLD設計基礎篇[M].北京:人民郵電出版社,2005.

        [4]錢 峰.EZ-USB FX2單片機原理、編程及應用[M].北京:北京航空工業(yè)出版社,2006.

        [5]Chris Cant.Windows WDM設備驅動程序開發(fā)指南[M].北京:機械工業(yè)出版社,2001.

        [6]蔣金濤,楊 鳴.USB2.0控制器EZ-USB FX2的性能特點及其數據傳輸實現[J].計算機工程與應用研究,2005,41(11):94-96.

        猜你喜歡
        設備系統(tǒng)設計
        諧響應分析在設備減振中的應用
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        瞞天過?!律O計萌到家
        藝術啟蒙(2018年7期)2018-08-23 09:14:18
        基于MPU6050簡單控制設備
        電子制作(2018年11期)2018-08-04 03:26:08
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        設計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        500kV輸變電設備運行維護探討
        成人网站免费大全日韩国产| 国产乱码一区二区三区精品| 日本大肚子孕妇交xxx| 亚洲欧美另类激情综合区| 中文人妻AV高清一区二区| 美女射精视频在线观看| 精品一区二区三区在线视频| av免费资源在线观看| 国产麻豆久久av入口| 大胸少妇午夜三级| 黄色毛片在线看| 久久精品国产亚洲av热九| 亚洲高清国产一区二区| 又大又粗又爽的少妇免费视频| 日韩免费小视频| 成人激情视频一区二区三区 | 视频在线国产一区二区| 日韩人妻无码精品久久| 欧美mv日韩mv国产网站| 亚洲欧洲AV综合色无码| 成人性生交大片免费看l| 亚洲av无码专区在线观看下载 | 久久九九青青国产精品| 女人天堂av免费在线| 亚洲国产精品日本无码网站| 日本精品人妻无码77777| 日本一道dvd在线中文字幕| 中国亚洲av第一精品| 妇女bbbb插插插视频| 亚洲国产精品自拍一区| 中文天堂一区二区三区| 久久精品第九区免费观看| 日日碰狠狠躁久久躁9| 国产亚洲精选美女久久久久 | 精品国产1区2区3区AV| 国产婷婷成人久久av免费| 极品少妇被猛的白浆直喷白浆| 中文字幕亚洲综合久久菠萝蜜| 美女射精视频在线观看| 亚洲精品~无码抽插| h国产视频|