NiosII的I2C控制IP及其在成像系統(tǒng)中的應(yīng)用
摘要:詳細(xì)介紹一種I2C控制IP的工作原理及其可編程寄存器,給出該IP在CMOS數(shù)字成像中的應(yīng)用實例。該實例基于可編程片上系統(tǒng)(SOPC)技術(shù)設(shè)計,在NioslI IDE中通過編寫程序來實現(xiàn)系統(tǒng)功能,并通過QuartusII軟件自帶的SignaITapII進(jìn)行驗證。結(jié)果表明,在CMOS成像領(lǐng)域選用該IP核,系統(tǒng)能充分利用SOPC技術(shù)的優(yōu)勢,具有擴(kuò)展性好、控制靈活、開發(fā)周期短等特點。
關(guān)鍵詞:SOPC;I2C控制IP;CMOS
1 IP的硬件結(jié)構(gòu)及寄存器
1.1 IP硬件結(jié)構(gòu)
IP內(nèi)部結(jié)構(gòu)如圖1所示。主要由波特率時鐘寄存器、寄存器組控制器、并行I/O接口、I2C可編程接口、I2C接口引擎5個模塊組成。波特率時鐘產(chǎn)生器用來產(chǎn)生I2C IP工作的基本時鐘頻率;寄存器組控制器用來對寄存器進(jìn)行設(shè)置,設(shè)置數(shù)據(jù)通過并行I/O接口傳送到該模塊中;并行I/0接口模塊用來處理可編程接口模塊傳送過來的命令;I2C可編程接口模塊用來設(shè)置IP各個寄存器的地址;I2C接口引擎模塊執(zhí)行I2C總線上數(shù)據(jù)的傳輸。
1.2 寄存器結(jié)構(gòu)
I2C控制IP主要由6個寄存器構(gòu)成,如表1所列。通過對寄存器的讀寫可以方便地控制I2C總線數(shù)據(jù)的傳輸,從而實現(xiàn)NioslI處理器與設(shè)備之間的通信。數(shù)據(jù)寄存器用來存放I2C總線上要傳送的數(shù)據(jù);波特率產(chǎn)生模塊,波特率時鐘寄存器和時鐘寄存器共同決定I2C總線上SCL的頻率。SCL的計算公式為。其中System_clk是系統(tǒng)時鐘;Value是時鐘寄存器的值;divider是波特率時鐘寄存器的值所對應(yīng)的分頻數(shù)(寄存器的值與分頻數(shù)相差為1,如寄存器設(shè)置為O,則分頻數(shù)為1;寄存器設(shè)置為1,則分頻數(shù)值為2)。本地地址寄存器、控制寄存器、狀態(tài)寄存器的詳細(xì)介紹略――編者注。
tcp/ip相關(guān)文章:tcp/ip是什么
評論