Semtech GSPI簡介

相信大家對SPI (Serial Peripheral Interface)應該都相同熟悉, 但如果是提到GSPI,大家有可能就會一頭霧水,在網路上搜尋,可能會找到Generic Serial Peripheral Interface,這是Intel® Serial IO Generic SPI (GSPI) Controllers,但跟這裡要介紹的Semtech GSPI是不同的喔。

 

Semtech的GSPI的完整名稱為Gennum Serial Peripheral Interface,而Gennum是一間加拿大公司,主要提供高速訊號用相關晶片,像是廣播,醫療用的SDI介面應用的相關IC及光纖通訊應用相關的IC, 在被Semtech合併後, 品牌名稱就改為Semtech。

 

在SDI介面應用的IC,大部份都是使用GSPI來做溝通,而GSPI就是基礎於標準SPI介面上,做一些調整,在3G時期的SERDES IC只是比較單純將8 bit address及8 bit data的部份調整成16 bit command及16 bit data,而實際上16 bit command是包含4 bit control及12 bit address,可以參考下圖:

圖片1

在GSPI的控制上,SDIN/SDOUT是可以支持daisy chain串聯通訊,最大的好處是MCU可以減少I/O使用的數量,多增加一個device只需多增加一個CS PIN即可,在使用上是相對簡單,雖然還是比使用I2C控制介面複雜一點,但在傳輸數據的速度可以到20Mbps,是比I2C最高1Mbps快得多,對SDI介面可以透過ANC來傳輸資料來說,使用GSPI介面是有效率得多。

圖片2



在推出12G SDI相關產品後,GSPI介面也進一步做了一些改良,原本16 bit command, 改變成32 bit command,data部份一樣維持16 bit data,其中32 bit command,一樣使用4個控制bit,address改成23 bit,且新增了5 bit unit address,需要特別注意使用32 bit command需要將EMEM控制bit設為high,基本使用上跟原本GSPI介面是相同的。

圖片3
 

原本多控制一顆device會多需要一個CS PIN的部份,在12G SDI的產品上可以針對每一顆IC設定unit address,而使用5 bit unit address,最多一個CS PIN可以同時控制32個device,換而言之,就是MCU可以省下31個I/O PIN,不過缺點在每次power on後,需要依照固定的程序來設定unit address,在MCU的設計上是增加了一些難度。

 

若是不想使用unit address來節省CS PIN的I/O數量,又不想用daisy chain的串聯通訊方式,Semtech 12G SDI相關產品也提供了另一種BUS through模式,每一個device的SDIN及SDOUT可以分別全部並接在一起,一樣使用CS PIN來選擇要讀寫的device,但只有被CS PIN選到的device,會將資料由SDOUT輸出,其它沒有被CS PIN選到的device,SDOUT輸出都是high-impedance,這樣就不會有不同device的SDOUT同時有輸出,造成MCU讀取資訊錯誤的狀況,,但要使用這個BUS through模式,一樣會需要在power on後,針對每顆device去設定要開啟BUS through,也會需要花一點時間在MCU的設計上,但難度會比設定unit address簡單的多。

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論