• <tfoot id="ukgsw"><input id="ukgsw"></input></tfoot>
    
    • 久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
      分享

      嵌入式 FPGA 的I2S接口,應用于A/D、DA,數字信號處器,音頻

       goandlove 2019-06-30

      一、I2S 接口介紹

      1.1、l2S 是 Inter-IC Sound bus 的簡稱

      1.2、l2S 總線接口是立體聲音頻信號和系統之間傳遞的接口,主要應用于:

      1)、A/D和D/A轉換器

      2)、數字信號處理器(DSP)

      3)、數字濾波器

      1.3、數字輸入/輸出接口 lPHILIPS 公司是I2S的發明者

      2、I2S的基本架構

      在I2S傳輸協議中,其數據信號、時鐘信號以及控制信號是分開傳輸的。

      2.1、使用三條傳輸線:

      1)、SD串行數據線

      2)、WS 左右聲道選擇線

      3)、SCK 同步時鐘信號線

      2.2、基本的傳輸時序如圖

      1)、SCK是模塊內的同步信號,從模式時由外部提供,主模式時由模塊內部自己產生。

      2)、WS是聲道選擇信號,表明了數據發送端所選擇的聲道,當

      ● WS=0,表示選擇左聲道

      ● WS=1,表示選擇右聲道

      3)、SD是串行數據,在I2S中以二進制補碼的形式在數據線中傳輸,首先傳輸最高位(MSB)

      4)、當系統字長比數據發送端字長長的時候,數據傳輸的時候就會出現截取現象,即如果數據接收端接收的數據位比它規定的字長長的話,那么規定字長最低位(LSB)以后的所有位將會被忽略。

      5)、另一方面,如果接收的字長比它規定的字長短的話,那么空余出來的位將會以0填補。

      6)、通過這種方式可以使音頻信號的最有效位得到傳輸從而保證正確的聽覺效果。

      3、I2S的幾種工作模式

      從數據的接收和發送的角度來說,它可以分為數據接收端(Transmitter)和數據發送端(Receiver)。從時鐘信號和聲道選擇信號的產生的角度來說,它又可以分為主機(Master)和從機(Slaver)。

      3.1、I2S就存在以下三種不同的模式,其中產生時鐘信號和聲道選擇信號的是主機

      3.1.1、數據傳輸端產生SCK,WS信號,為主機,從而數據接收端成為從機,如圖所示

      3.1.2、數據接收端產生SCK,WS信號,為主機,從而數據傳輸端成為從機,如圖所示:

      3.1.3、當有多個數據接收端和多個數據傳輸端的時候,很難確定誰作為主機,因此就出現了另一種模式,即一個控制器專門負責產生時鐘和聲道選擇信號,如圖所示:

      二、I2S IP Core 的設計

      1、在此次設計中,把整個設計分成3個模塊

      1)、控制模塊

      2)、數據發送模塊

      3)、數據接收模塊

      數據發送和接收模塊都工作于從模式,分別可以獨立工作,通過控制模塊的控制處于不同的狀態。

      2、控制模塊的設計

      2.1、控制部分主要是通過TX_RX_SEL和MA_SL_SEL信號來決定是自己產生 SCK和WS,還是接收總線上的SCK和WS。外部時鐘信號(CLK)、復位信號(RESET)用來控制整個系統所處狀態和實現系統復位。

      2.2、從外部引入的系統時鐘信號(CLK)由晶振產生,本設計中使用的晶振頻率是18.432MHz,故系統時鐘頻率為18.432MHz

      2.3、主模式中,系統時鐘經過分頻處理后,生成I2S的內部傳輸時鐘SCK和聲道選擇信號WS。 n本次設計中使用的聲音的采樣頻率為48kHz,則聲道選擇信號WS的頻率必須也為48kHz。由于傳輸左右2個聲道的數據為16 bit,故SCK的頻率為:48kHz×16×2=1.536MHz。

      如果需要傳輸20 bit、24 bit或32 bit的左右聲道的數據,可以提高SCK的頻率,由上式可以計算出需要的SCK的頻率。

      根據WS、SCK與系統時鐘頻率的關系,可以得出由系統時鐘頻率產生WS和SCK的分頻系數。

      3、控制模塊中雙向端口的設計

      3.1、在控制模塊中SCK、WS、SD信號都是輸入輸出雙向端口,根據外部信號TX_RX_SEL 、MA_SL_SEL信號的控制,決定端口的輸入輸出方向。如圖所示:

      3.2、當TX_SD向外發送數據時,TX_RX_SEL為高電平,輸出緩沖打開,去驅動外部的SD,而另一端則關閉輸入緩沖,令緩沖輸入到內部RX_SD上的電平為高阻態。

      3.3、當RX_SD接收外部數據時,TX_RX_SEL為低電平,輸入緩沖打開,接收外部SD的數據,另一端則關閉輸出緩沖,令輸出到外部SD上的電平為高阻態。

      3.4、通過上面的設計,就可以保證在某一時刻只有一端在驅動總線,而不會造成數據沖突。

      4、數據發送模塊的設計

      4.1、各信號的時序關系:

      4.2、為了配合與控制模塊的連接,控制模塊中使用了使能信號(TX_EN和RX_EN) 對數據發送和數據接收模塊使能。 上圖中的WS、SCK、SD信號的引入都經過一個三態門,通過TX_EN控制其與控制模塊的連接或斷開。

      其Verilog代碼片斷為:

      assign WS = TX_EN ? TX_RX_WS:1'bz;

      assign SCK = TX_EN ? TX_RX_SCK:1'bz;

      assign TX_SD = TX_EN ? SD:1'bz;

      5、數據接收模塊的設計

      5.1、WSP信號的產生方式與發送模塊一樣。計數模塊的計數值在本設計中為模16,當計數達到16時,EN信號變成低電平,使計數器停止計數,同時也使串并轉換模塊停止接收數據。WS、SCK、SD信號的進入同樣需要經過RX_EN信號的使能來決定與控制模塊的連接或斷開。

      6、各個模塊的整合

      三、測試、仿真

      首先必須編寫測試平臺,使用2個I2S結構組成一個收發平臺,配置其中一個處于主模式發送狀態,配置另一個出去從模式接收狀態。對發送部分輸入數據,監視接收部分接收到的數據,對比發送和接收的數據,驗證設計是否正確。

      對于有硬件平臺的可以進行硬件驗證,本文在此省略。

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發表

        請遵守用戶 評論公約

        類似文章 更多

        主站蜘蛛池模板: 久久人妻无码一区二区| 宝贝扒开下面自慰给我看| 国产一精品一AV一免费爽爽| 亚洲av男人电影天堂热app| 亚洲人成网线在线播放VA| 狠狠色噜噜狠狠亚洲AV| 日韩乱码人妻无码中文字幕视频| 亚洲香蕉网久久综合影视| 又大又粗又硬又爽黄毛少妇| 亚洲欧美日韩在线码| 亚洲欧美成人综合久久久| 国产一区二区不卡自拍| 国产特级毛片AAAAAA视频| 不卡一区二区国产精品| 婷婷综合久久中文字幕| 国产情侣激情在线对白| 国产亚洲AV无码AV男人的天堂| 日本一区不卡高清更新二区 | 日日摸夜夜添夜夜添高潮喷水| 国语精品自产拍在线观看网站| 成年男女免费视频网站| 国产对白老熟女正在播放| 亚洲AV成人中文无码专区| 四虎成人精品永久网站| 国产初高中生视频在线观看| 欧美在线人视频在线观看| 四虎国产精品永久入口| 欧美综合人人做人人爱| 亚洲精品香蕉一区二区| 亚洲精品欧美二区三区中文字幕| 国产又色又刺激高潮视频| 日本中文字幕有码在线视频 | 97久久天天综合色天天综合色HD | 日本XXXX色视频在线观看免费| 久久99热只有频精品8| 无码精品人妻一区二区三区免费看| 少妇午夜啪爽嗷嗷叫视频| 亚洲色一色噜一噜噜噜| 无码熟妇人妻av影音先锋| 久久久亚洲欧洲日产国码农村 | 亚洲日本欧洲二区精品|