《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于組件復(fù)用的可重構(gòu)I²C總線讀寫控制電路設(shè)計
基于組件復(fù)用的可重構(gòu)I²C總線讀寫控制電路設(shè)計
電子技術(shù)應(yīng)用
徐波,杜曉實,朱力可,王萍
中國西南電子技術(shù)研究所
摘要: 現(xiàn)代軟件無線電架構(gòu)中通常為了滿足軟件實時性而采用FPGA作預(yù)處理功能,但隨著軟件無線電系統(tǒng)不斷朝綜合化和智能化方向發(fā)展,如何應(yīng)對各類復(fù)雜使用場景給系統(tǒng)設(shè)計者帶來越來越多的挑戰(zhàn)。面對不斷激增的需求,F(xiàn)PGA設(shè)計中經(jīng)常暴露出可移植性差、平臺依賴性強(qiáng)、程序?qū)﹂_發(fā)人員的依賴度高、系統(tǒng)集成與整合度難度大等問題。選取電子裝備中常用的I²C總線控制部分,借鑒軟件工程中“高內(nèi)聚、低耦合”的模塊化設(shè)計思想,提出一種總線控制電路的優(yōu)化策略,即基于組件復(fù)用的方法設(shè)計了一種可重構(gòu)I²C總線讀寫控制電路。該電路具備按需配置波特率功能,同時具有可選的APB接口以及中斷功能,提供讀/寫數(shù)據(jù)位寬分別為1 B/2 B/4 B系列控制組件,并通過配置系列組件的方式重構(gòu)讀/寫數(shù)據(jù)位寬。該電路具有實際的工程價值且已成功應(yīng)用于不同項目以及TPAFEA008、ADT75和LTC2991等常用器件上。
中圖分類號:TN47 文獻(xiàn)標(biāo)志碼:A DOI: 10.16157/j.issn.0258-7998.256281
中文引用格式: 徐波,杜曉實,朱力可,等. 基于組件復(fù)用的可重構(gòu)I2C總線讀寫控制電路設(shè)計[J]. 電子技術(shù)應(yīng)用,2025,51(7):89-94.
英文引用格式: Xu Bo,Du Xiaoshi,Zhu Like,et al. Design of reconfigurable I2C bus control circuit based on component reuse[J]. Application of Electronic Technique,2025,51(7):89-94.
Design of reconfigurable I²C bus control circuit based on component reuse
Xu Bo,Du Xiaoshi,Zhu Like,Wang Ping
Southwest China Institute of Electronic Technology
Abstract: In modern software defined radio architectures, FPGA is usually used for preprocessing functions to meet real-time software requirements. However, as software defined radio systems continue to develop towards integration and intelligence, how to cope with various complex usage scenarios brings more and more challenges to system designers. Faced with the constantly increasing demand, FPGA design often exposes problems such as poor portability, strong platform dependence, high program dependence on developers, and difficulty in system integration and combination. This article selects the commonly used I²C bus control part in electronic equipment, draws on the modular design concept of "high cohesion, low coupling" in software engineering, and proposes an optimization strategy for bus control circuits. Based on component reuse, a reconfigurable I²C bus read-write control circuit is designed. This circuit has the function of configuring baud rate as needed, as well as optional APB interface and interrupt function. It provides a series of control components with read/write data bit widths of 1 B/2 B/4 B, and reconstructs the read/write data bit width by configuring the series components. This circuit has parctical engineering application value and has been successfully applied to domestically produced devices such as TPAFEA008, as well as commonly used devices such as ADT75 and LTC2991.
Key words : reconfigurable component reuse;I²C bus read-write control;FPGA design;software defined radio;domestic components

引言

隨著現(xiàn)代軟件無線電架構(gòu)不斷朝著綜合化、微型化和智能化的方向發(fā)展,如何平衡SWaP(Size,Weight and Power)三者之間的關(guān)系以及應(yīng)對各類復(fù)雜戰(zhàn)場應(yīng)用環(huán)境給系統(tǒng)設(shè)計者帶來極大的挑戰(zhàn)。為了滿足軟件實時性處理的要求,軟件無線電系統(tǒng)通常在高速采樣數(shù)據(jù)流與軟件處理之間利用FPGA先進(jìn)行預(yù)處理,把高速數(shù)據(jù)流降低到軟件處理能夠適應(yīng)的速度之內(nèi)[1]。但是由于歷史等諸多原因,當(dāng)前多數(shù)項目的FPGA設(shè)計中繼承代碼較多,暴露出邏輯代碼可移植性差、平臺依賴性強(qiáng)、代碼對開發(fā)人員的依賴度高、程序擴(kuò)展性弱、靈活性低、系統(tǒng)集成與整合難度大等問題。因此,如何增強(qiáng)設(shè)計的可重用性和擴(kuò)展性,成為當(dāng)前系統(tǒng)設(shè)計中一個常見但卻很容易忽視的問題。

邏輯設(shè)計的特點(diǎn)介于軟件設(shè)計和硬件設(shè)計之間,即利用軟件方法設(shè)計硬件電路。軟件工程體系結(jié)構(gòu)設(shè)計中通常采用模塊化的開發(fā)方式,遵循“高內(nèi)聚、低耦合”的原則[2]?!皟?nèi)聚”即表示模塊內(nèi)部之間的緊密度,“高內(nèi)聚”是指一個模塊的功能明確、獨(dú)立,模塊內(nèi)部各元素功能聯(lián)系緊密,“高內(nèi)聚”設(shè)計的優(yōu)點(diǎn)是功能明確,一個模塊只負(fù)責(zé)一個功能,可維護(hù)性強(qiáng),模塊內(nèi)部功能相關(guān)性高,修改功能后不會影響其他功能?!榜詈稀奔幢硎竟δ苣K之間關(guān)聯(lián)度和依賴度,“低耦合”是指盡量減少各功能模塊之間依賴度,“低耦合”設(shè)計的優(yōu)點(diǎn)是,由于模塊間的依賴度降低,系統(tǒng)的可重用性和擴(kuò)展性相應(yīng)提高,同時模塊功能發(fā)生改變時不會影響其他模塊功能?!案邇?nèi)聚、低耦合”的設(shè)計原則大大降低了功能修改的影響,提高了系統(tǒng)重用性。

芯片和FPGA設(shè)計中也大量借用了軟件工程中“高內(nèi)聚、低耦合”的設(shè)計思想,在專用芯片(ASIC)和片上系統(tǒng)(SoC)的設(shè)計中,將特定功能的模塊以IP核的方式進(jìn)行定制設(shè)計,最后根據(jù)需求將各功能IP核整合集成在通用總線上;在FPGA設(shè)計中,器件廠商或IP供應(yīng)商也提供了大量的IP軟/硬核用于系統(tǒng)的集成開發(fā)。

通用的低速通信IP核包括SPI、UART、CAN、GPIO和I2C等, I2C總線協(xié)議是一種用于芯片間相互通信的串行傳輸總線協(xié)議,它由串行時鐘SCL和串行數(shù)據(jù)線SDA完成全雙工數(shù)據(jù)傳送。由于I2C總線具有連線少、協(xié)議簡單、允許多機(jī)控制和同步、可擴(kuò)展性強(qiáng)的優(yōu)點(diǎn),因此被廣泛應(yīng)用于電子裝備中。

隨著工藝的不斷進(jìn)步,I2C總線協(xié)議版本也不斷演進(jìn),因而導(dǎo)致各家芯片支持的波特率等規(guī)格差異很大。對ADI、Linear、TI和3PEAK公司的幾款常用芯片進(jìn)行了對比,如表1所示。如Linear公司的LTC2991只支持兩種模式:標(biāo)準(zhǔn)模式和快速模式[4];即使是相同廠商的不同系列芯片,支持的波特率模式也有差別,比如ADI公司的ADT75芯片支持兩種模式:標(biāo)準(zhǔn)模式和快速模式[5],但AD7994支持三種波特率模式:標(biāo)準(zhǔn)模式、快速模式和高速模式[6]。

表1 各廠商器件I2C接口速率

無標(biāo)題.png

其次,由于各家芯片的應(yīng)用場景和功能不同,導(dǎo)致芯片內(nèi)部支持的寄存器讀寫屬性、數(shù)據(jù)位寬差異也較大。有的芯片內(nèi)部寄存器支持單字節(jié)讀寫操作,有的支持多字節(jié)讀寫操作,有的支持單字節(jié)寫入,多字節(jié)讀出操作等,在單字節(jié)和多字節(jié)的讀寫操作方式上也有差異,在發(fā)生芯片廠商更換等場景時,則需要重新定制設(shè)計,導(dǎo)致代碼通用化程度低。同時,近年國內(nèi)外對基于I2C協(xié)議的總線控制器均有大量研究應(yīng)用,總體來說有采用嵌入式處理器的軟件應(yīng)用方式、或者通過純硬件以及FPGA等方式等。文獻(xiàn)[3]給出了基于嵌入式處理器并利用普通I/O管腳模擬出I2C串口的方案;李雨桐等[10]給出了基于ADS1115的FPGA接口設(shè)計,由此證明了利用有限狀態(tài)機(jī)并結(jié)合ADS1115的I2C接口時序的方案可行性,但是該方案將狀態(tài)控制和接口時序控制共同設(shè)計,代碼耦合度高,不利于代碼的可重用。

為解決上述問題,本文討論并借鑒上述模塊化設(shè)計方法,提出一種總線控制的優(yōu)化策略,即基于組件復(fù)用方法設(shè)計了一種可重構(gòu)的I2C總線讀寫控制電路。以此為基礎(chǔ),討論并提供AD7994、TPAFEA008和LTC2991芯片的總線控制接口設(shè)計實例與FPGA上的驗證結(jié)果。


本文詳細(xì)內(nèi)容請下載:

http://m.xxav2194.com/resource/share/2000006601


作者信息:

徐波,杜曉實,朱力可,王萍

(中國西南電子技術(shù)研究所,四川 成都 610036)


Magazine.Subscription.jpg

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: ljr绿巨人地址| 日本系列1页亚洲系列| 欧美一级视频在线观看欧美| 欧美18性精品| 日韩在线视频精品| 扁豆传媒在线入口| 最近中文字幕高清中文字幕电影二| 日韩精品久久无码中文字幕| 日批免费观看视频| 好大好硬别停老师办公室视频| 国语自产偷拍精品视频偷拍| 国产精品va无码二区| 国产做受视频120秒试看| 午夜aaaaaaaaa视频在线| 亚洲精品天堂成人片AV在线播放 | 天天射天天干天天舔| 国产精品成人久久久久久久| 国产在线视频不卡| 免费无码成人AV片在线在线播放| 亚洲日韩中文字幕在线播放| 久久桃花综合桃花七七网| 一区二区三区免费高清视频| 84pao强力永久免费高清| 久久国产精品成人片免费| 中文字幕综合网| 一本久久伊人热热精品中文| 4480新热播影院| 草莓视频国产在线观看| 熟妇人妻无码XXX视频| 日韩精品一区二区三区中文精品 | spoz是什么意思医学| 亚洲xxxxx| 美女被免费看视频网站| 热99精品在线| 日本黄页网站免费大全| 夜夜偷天天爽夜夜爱| 国产亚洲欧美久久精品| 亚洲深深色噜噜狠狠爱网站| 久久久久亚洲AV无码专区桃色| 3d动漫h在线观看| 疯狂做受XXXX国产|