浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » 集成電路

CoolRunner-II CPLD設(shè)計(jì)

發(fā)布時(shí)間:2008/9/19 0:00:00 訪問(wèn)次數(shù):655

  (1)工作流程
  cpld控制adc初始化并讀回12位轉(zhuǎn)換結(jié)果,將其解串為16位存儲(chǔ)在sram中。此過(guò)程由兩個(gè)狀態(tài)機(jī)實(shí)現(xiàn),如圖1所示。
  cpld配置adc內(nèi)部每一個(gè)寄存器,緊接著一個(gè)“direct mode”命令開(kāi)始對(duì)一個(gè)指定的輸入通道進(jìn)行一次轉(zhuǎn)換。cpld在讀入轉(zhuǎn)換結(jié)果之前,必須發(fā)送一個(gè)“直接模式命令”,讀入轉(zhuǎn)換結(jié)果。之后,將其解串并存儲(chǔ)在sram中。重復(fù)上面的操作,完成所有通道轉(zhuǎn)換。

  (2)主狀態(tài)機(jī)

  主狀態(tài)機(jī)如圖2所示。

  如圖1 adc接口工作流程

  如圖2 主狀態(tài)機(jī)

  控制邏輯流程如下。
  ● 指定寄存器地址。
  ● 通過(guò)串行接口發(fā)送相應(yīng)的地址。
  ● 指定相應(yīng)寄存器的數(shù)據(jù)。
  ● 通過(guò)串行接口發(fā)送相應(yīng)寄存器的數(shù)據(jù)。
  ● 重復(fù)執(zhí)行前4步,直到所有寄存器被配置完成。
  ● 指定“直接模式指令”,開(kāi)始對(duì)一個(gè)選定的輸入通道進(jìn)行ad轉(zhuǎn)換。
  ● 讀入轉(zhuǎn)換結(jié)果,并將其寫(xiě)入sram。
  ● 重復(fù)執(zhí)行執(zhí)行上兩步,讀入指定輸入通道的所有轉(zhuǎn)換結(jié)果。
  ● 重復(fù)執(zhí)行前3步,完成所有輸入通道的轉(zhuǎn)換。

  如表所示為主狀態(tài)機(jī)中每個(gè)狀態(tài)的詳細(xì)說(shuō)明。mode_flag="0"表明串行移位的數(shù)據(jù)為8位寬,它代表寄存器地址及待寫(xiě)入寄存器的數(shù)據(jù)或直接命令;mode_flag="1"表明串行移位的數(shù)據(jù)為16位寬,它代表adc轉(zhuǎn)換結(jié)果。其中有12位的adc轉(zhuǎn)換數(shù)據(jù),3個(gè)零位及一個(gè)溢出位。

  如表 主狀態(tài)機(jī)中每個(gè)狀態(tài)的詳細(xì)說(shuō)明



  (3)定制主狀態(tài)機(jī)

  用戶可以通過(guò)修改主狀態(tài)機(jī)vhdl代碼,使設(shè)計(jì)適合特定的應(yīng)用,主要有如下兩個(gè)方面需要修改。
  ● 寄存器模式
  主狀態(tài)機(jī)會(huì)一直保持在寄存器模式,直到所有寄存器被配置完成。用戶可以指定哪些寄存器需要配置和寫(xiě)入數(shù)據(jù)。下面的代碼說(shuō)明如何修改vhdl代碼,以完成對(duì)addr3寄存器的寫(xiě)操作:
constant wr_addr3_en: booi_jean := true;
-- write/read to control register
constant aaddr3: std_logic_vector(7 downto 0) := '00000011';
--data to be written
  constant data_wr_addr3: std_logic_vector(7 downteo 0): ='000001100';

  變量wr_addr3_en可以設(shè)置為true或false,以使能或禁止對(duì)addr3的寫(xiě)操作。如果設(shè)計(jì)為true,則待寫(xiě)入此寄存器的數(shù)據(jù)也需要使用常數(shù)data _wr_addr3指定。在此例中,將“00000100”寫(xiě)入addr3。這個(gè)常數(shù)指定read back mode 1(msb先被讀回),同時(shí)設(shè)置cclk分頻系數(shù)為1。

  寫(xiě)寄存器不僅要指定寄存器地址,而且要指定讀/寫(xiě)操作及數(shù)據(jù)字的大小。被寫(xiě)入控制寄存器的控制字包含指定先讀msb還是lsb、cclk分頻系數(shù)、通道的pga增益,以及使能數(shù)字i/o,更多特性可以參考adc數(shù)據(jù)手冊(cè)。

  ● 直接模式
  一旦adc的所有寄存器被配置完成,adc可以工作在直接模式,此模式允許外部控制器來(lái)指定輸入通道及讀取轉(zhuǎn)換數(shù)據(jù)。此設(shè)計(jì)中的vhdl代碼允許設(shè)計(jì)者指定哪個(gè)輸入通道將會(huì)被讀取及多少個(gè)轉(zhuǎn)換結(jié)果將會(huì)被讀取,下面的代碼說(shuō)明如何對(duì)通道1進(jìn)行8次轉(zhuǎn)換并從通道1讀8次轉(zhuǎn)換結(jié)果:



  在此設(shè)計(jì)中,多少個(gè)模擬量需要轉(zhuǎn)換由寫(xiě)入到sram中的轉(zhuǎn)換結(jié)果的數(shù)目決定。因此一旦sram的地址計(jì)數(shù)器達(dá)到sram_high,指定數(shù)目的轉(zhuǎn)換結(jié)果就已經(jīng)被存儲(chǔ)在sram中。通道使能由dm_sng_ln0_en控制,設(shè)為true,將允許該通道的轉(zhuǎn)換。常數(shù)dm_sng_ln0存儲(chǔ)通道ln0的直接命令字。

  (4)移位控制邏輯
移位控制邏輯由主狀態(tài)機(jī)初始化,移位狀態(tài)機(jī)用來(lái)控制adc串行數(shù)據(jù)的移位輸出和輸入,包括寫(xiě)寄存器地址、寫(xiě)寄存器數(shù)據(jù)和寫(xiě)直接模式指令等。在直接模式轉(zhuǎn)換周期移入轉(zhuǎn)換結(jié)果。

  移位狀態(tài)機(jī)控制邏輯如圖3所示,在go_shift(由主狀態(tài)機(jī)產(chǎn)生)的上升沿移位狀態(tài)機(jī)被激活,mode_flag為8位或16位操作標(biāo)志位。

  移位狀態(tài)機(jī)產(chǎn)生sclk移位時(shí)鐘,并準(zhǔn)備好待發(fā)送的數(shù)據(jù)。在sc0狀態(tài)(sclk='0')時(shí),存放待發(fā)送數(shù)據(jù)的寄存器被使能;在sci狀態(tài)(sclk='1')時(shí),數(shù)據(jù)位被移出到din。



  如圖3 移位狀態(tài)機(jī)控制邏輯

  在直接模式轉(zhuǎn)換周期,移位狀態(tài)機(jī)在sclk的有效邊沿讀回dout信號(hào)線上的轉(zhuǎn)換結(jié)果。

  歡迎轉(zhuǎn)載,信息來(lái)自維庫(kù)電子市場(chǎng)網(wǎng)(www.dzsc.com)



  (1)工作流程
  cpld控制adc初始化并讀回12位轉(zhuǎn)換結(jié)果,將其解串為16位存儲(chǔ)在sram中。此過(guò)程由兩個(gè)狀態(tài)機(jī)實(shí)現(xiàn),如圖1所示。
  cpld配置adc內(nèi)部每一個(gè)寄存器,緊接著一個(gè)“direct mode”命令開(kāi)始對(duì)一個(gè)指定的輸入通道進(jìn)行一次轉(zhuǎn)換。cpld在讀入轉(zhuǎn)換結(jié)果之前,必須發(fā)送一個(gè)“直接模式命令”,讀入轉(zhuǎn)換結(jié)果。之后,將其解串并存儲(chǔ)在sram中。重復(fù)上面的操作,完成所有通道轉(zhuǎn)換。

  (2)主狀態(tài)機(jī)

  主狀態(tài)機(jī)如圖2所示。

  如圖1 adc接口工作流程

  如圖2 主狀態(tài)機(jī)

  控制邏輯流程如下。
  ● 指定寄存器地址。
  ● 通過(guò)串行接口發(fā)送相應(yīng)的地址。
  ● 指定相應(yīng)寄存器的數(shù)據(jù)。
  ● 通過(guò)串行接口發(fā)送相應(yīng)寄存器的數(shù)據(jù)。
  ● 重復(fù)執(zhí)行前4步,直到所有寄存器被配置完成。
  ● 指定“直接模式指令”,開(kāi)始對(duì)一個(gè)選定的輸入通道進(jìn)行ad轉(zhuǎn)換。
  ● 讀入轉(zhuǎn)換結(jié)果,并將其寫(xiě)入sram。
  ● 重復(fù)執(zhí)行執(zhí)行上兩步,讀入指定輸入通道的所有轉(zhuǎn)換結(jié)果。
  ● 重復(fù)執(zhí)行前3步,完成所有輸入通道的轉(zhuǎn)換。

  如表所示為主狀態(tài)機(jī)中每個(gè)狀態(tài)的詳細(xì)說(shuō)明。mode_flag="0"表明串行移位的數(shù)據(jù)為8位寬,它代表寄存器地址及待寫(xiě)入寄存器的數(shù)據(jù)或直接命令;mode_flag="1"表明串行移位的數(shù)據(jù)為16位寬,它代表adc轉(zhuǎn)換結(jié)果。其中有12位的adc轉(zhuǎn)換數(shù)據(jù),3個(gè)零位及一個(gè)溢出位。

  如表 主狀態(tài)機(jī)中每個(gè)狀態(tài)的詳細(xì)說(shuō)明



  (3)定制主狀態(tài)機(jī)

  用戶可以通過(guò)修改主狀態(tài)機(jī)vhdl代碼,使設(shè)計(jì)適合特定的應(yīng)用,主要有如下兩個(gè)方面需要修改。
  ● 寄存器模式
  主狀態(tài)機(jī)會(huì)一直保持在寄存器模式,直到所有寄存器被配置完成。用戶可以指定哪些寄存器需要配置和寫(xiě)入數(shù)據(jù)。下面的代碼說(shuō)明如何修改vhdl代碼,以完成對(duì)addr3寄存器的寫(xiě)操作:
constant wr_addr3_en: booi_jean := true;
-- write/read to control register
constant aaddr3: std_logic_vector(7 downto 0) := '00000011';
--data to be written
  constant data_wr_addr3: std_logic_vector(7 downteo 0): ='000001100';

  變量wr_addr3_en可以設(shè)置為true或false,以使能或禁止對(duì)addr3的寫(xiě)操作。如果設(shè)計(jì)為true,則待寫(xiě)入此寄存器的數(shù)據(jù)也需要使用常數(shù)data _wr_addr3指定。在此例中,將“00000100”寫(xiě)入addr3。這個(gè)常數(shù)指定read back mode 1(msb先被讀回),同時(shí)設(shè)置cclk分頻系數(shù)為1。

  寫(xiě)寄存器不僅要指定寄存器地址,而且要指定讀/寫(xiě)操作及數(shù)據(jù)字的大小。被寫(xiě)入控制寄存器的控制字包含指定先讀msb還是lsb、cclk分頻系數(shù)、通道的pga增益,以及使能數(shù)字i/o,更多特性可以參考adc數(shù)據(jù)手冊(cè)。

  ● 直接模式
  一旦adc的所有寄存器被配置完成,adc可以工作在直接模式,此模式允許外部控制器來(lái)指定輸入通道及讀取轉(zhuǎn)換數(shù)據(jù)。此設(shè)計(jì)中的vhdl代碼允許設(shè)計(jì)者指定哪個(gè)輸入通道將會(huì)被讀取及多少個(gè)轉(zhuǎn)換結(jié)果將會(huì)被讀取,下面的代碼說(shuō)明如何對(duì)通道1進(jìn)行8次轉(zhuǎn)換并從通道1讀8次轉(zhuǎn)換結(jié)果:



  在此設(shè)計(jì)中,多少個(gè)模擬量需要轉(zhuǎn)換由寫(xiě)入到sram中的轉(zhuǎn)換結(jié)果的數(shù)目決定。因此一旦sram的地址計(jì)數(shù)器達(dá)到sram_high,指定數(shù)目的轉(zhuǎn)換結(jié)果就已經(jīng)被存儲(chǔ)在sram中。通道使能由dm_sng_ln0_en控制,設(shè)為true,將允許該通道的轉(zhuǎn)換。常數(shù)dm_sng_ln0存儲(chǔ)通道ln0的直接命令字。

  (4)移位控制邏輯
移位控制邏輯由主狀態(tài)機(jī)初始化,移位狀態(tài)機(jī)用來(lái)控制adc串行數(shù)據(jù)的移位輸出和輸入,包括寫(xiě)寄存器地址、寫(xiě)寄存器數(shù)據(jù)和寫(xiě)直接模式指令等。在直接模式轉(zhuǎn)換周期移入轉(zhuǎn)換結(jié)果。

  移位狀態(tài)機(jī)控制邏輯如圖3所示,在go_shift(由主狀態(tài)機(jī)產(chǎn)生)的上升沿移位狀態(tài)機(jī)被激活,mode_flag為8位或16位操作標(biāo)志位。

  移位狀態(tài)機(jī)產(chǎn)生sclk移位時(shí)鐘,并準(zhǔn)備好待發(fā)送的數(shù)據(jù)。在sc0狀態(tài)(sclk='0')時(shí),存放待發(fā)送數(shù)據(jù)的寄存器被使能;在sci狀態(tài)(sclk='1')時(shí),數(shù)據(jù)位被移出到din。



  如圖3 移位狀態(tài)機(jī)控制邏輯

  在直接模式轉(zhuǎn)換周期,移位狀態(tài)機(jī)在sclk的有效邊沿讀回dout信號(hào)線上的轉(zhuǎn)換結(jié)果。

  歡迎轉(zhuǎn)載,信息來(lái)自維庫(kù)電子市場(chǎng)網(wǎng)(www.dzsc.com)



相關(guān)IC型號(hào)

熱門(mén)點(diǎn)擊

 

推薦技術(shù)資料

DS2202型示波器試用
    說(shuō)起數(shù)字示波器,普源算是國(guó)內(nèi)的老牌子了,F(xiàn)QP8N60... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號(hào)-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!