TWI727581B - 資料傳輸系統 - Google Patents

資料傳輸系統 Download PDF

Info

Publication number
TWI727581B
TWI727581B TW108148309A TW108148309A TWI727581B TW I727581 B TWI727581 B TW I727581B TW 108148309 A TW108148309 A TW 108148309A TW 108148309 A TW108148309 A TW 108148309A TW I727581 B TWI727581 B TW I727581B
Authority
TW
Taiwan
Prior art keywords
data
interface
converter
storage device
command
Prior art date
Application number
TW108148309A
Other languages
English (en)
Other versions
TW202121181A (zh
Inventor
林振東
陳月峰
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Application granted granted Critical
Publication of TWI727581B publication Critical patent/TWI727581B/zh
Publication of TW202121181A publication Critical patent/TW202121181A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)

Abstract

資料傳輸系統包含主控端、通用串列匯流排介面轉換器、先進先出介面轉換器、複數個功能電路及匯流排橋接電路。主控端根據通用串列匯流排的通訊規範收發資料。通用串列匯流排介面轉換器根據通用串列匯流排通訊規範自第一接口收發資料,並根據先進先出通訊規範自第二接口收發資料。先進先出介面轉換器根據先進先出通訊規範自耦接於第二接口的第三接口收發資料,並根據特定匯流排通訊規範自第四接口收發資料。匯流排橋接電路根據特定匯流排通訊規範將第四接口所接收到的資料傳送至對應的功能電路。

Description

資料傳輸系統
本發明是有關於一種資料傳輸系統,特別是一種能夠在電腦主機及可程式化邏輯陣列(Field-Programmable Gate Array,FPGA)板之間進行大量資料傳輸的資料傳輸系統。
由於系統晶片(System on Chip,SoC)的電路及功能較為複雜,設計者常會在正式實作晶片前,先利用可程式化邏輯陣列板來進行驗證。舉例來說,使用者可以透過電腦主機將可程式化邏輯陣列板編程為所需的電路,並可將所欲驗證的資料傳送到可程式化邏輯陣列板來進行驗證。在先前技術中,電腦主機與可程式化邏輯陣列板的通訊常是以序列(serial)的方式進行,例如透過通用非同步接收發送器(Universal Asynchronous receiver transmitter,UART)接口(interface)來傳輸資料。然而以序列方式傳輸的資料頻寬較小,因此當所欲傳輸的資料量較大時,即需要耗費大量的時間。尤其現今系統晶片所需處理的資料日漸龐大,通用非同步接收發送器接口的傳輸速率已難以滿足使用者的需求。
此外,在先前技術中,電腦主機與可程式化邏輯陣列板之間也可利用乙太網路(Ethernet)的方式來傳輸較大量的資料。然而,乙太網路的傳輸需要在可程式化邏輯陣列板內部設置媒體存取控制電路(Media Access Control,MAC),並在外部加上埠實體層(PHY),且媒體存取控制電路及埠實體層都需要 驅動器來控制,因此導致可程式化邏輯陣列板在整合及設計上都相對複雜。
本發明的一實施例提供一種資料傳輸系統,資料傳輸系統包含主控端、通用串列匯流排介面轉換器、先進先出介面轉換器、複數個功能電路及匯流排橋接電路。
主控端包含通用串列匯流排(Universal Serial Bus,USB)接口。主控端根據通用串列匯流排的通訊規範自通用串列匯流排接口收發資料。通用串列匯流排介面轉換器包含:第一接口、第二接口及先進先出(First In First Out,FIFO)儲存裝置。第一接口耦接於通用串列匯流排接口。先進先出儲存裝置儲存由第一接口及第二接口所接收的資料。通用串列匯流排介面轉換器根據通用串列匯流排的通訊規範自第一接口收發資料,並根據先進先出的通訊規範自第二接口收發資料。
先進先出介面轉換器包含第三接口及第四接口。第三接口耦接於第二接口。先進先出介面轉換器根據先進先出的通訊規範自第三接口收發資料,及根據特定匯流排的通訊規範自第四接口收發資料。匯流排橋接電路耦接於第四接口及複數個功能電路。每一功能電路執行對應功能。匯流排橋接電路將自第四接口所接收到的資料傳送至對應的功能電路,並將對應之功能電路所發送的資料傳送至第四接口。
100:資料傳輸系統
110:主控端
112:通用串列匯流排接口
120:通用串列匯流排介面轉換器
122、124、132、134:接口
126:先進先出儲存裝置
130:先進先出介面轉換器
138:有限狀態機
1361至136M:組態暫存器
1401至140N:功能電路
150:匯流排橋接電路
1241、1321:時脈接腳
1242、1322:非空接腳
1243、1323:滿載接腳
1244、1324:排出接腳
1245、1325:推入接腳
1246、1326:資料接腳
1247、1327:輸出致能接腳
SIGCLK:時脈訊號
SIGNEMP:先進先出非空訊號
SIGFULL:滿載訊號
SIGPOP:排出訊號
SIGPUSH:推入訊號
SIGOEN:輸出致能訊號
FB:可程式化邏輯陣列板
MB:電路板
第1圖是本發明一實施例的資料傳輸系統的示意圖。
第2圖是本發明一實施例之通用串列匯流排介面轉換器及先進先出介面轉換器 的接腳示意圖。
第1圖是本發明一實施例的資料傳輸系統100的示意圖。資料傳輸系統100包含主控端110、通用串列匯流排介面轉換器120、先進先出介面轉換器130、複數個功能電路1401至140N及匯流排橋接電路150,其中N是大於1的正整數。
在有些實施例中,主控端110可以是電腦主機,例如但不限於筆記型電腦、桌上型電腦或是行動裝置。在第1圖中,主控端110可以設置在電腦系統的電路板MB上,而先進先出介面轉換器130、功能電路1401至140N及匯流排橋接電路150可以設置在可程式化邏輯陣列板FB上。此外,通用串列匯流排介面轉換器120則可以設置在可程式化邏輯陣列板FB上或可程式化邏輯陣列板FB的連接器上。
主控端110可包含通用串列匯流排(Universal Serial Bus,USB)接口112,而主控端110可根據通用串列匯流排的通訊規範自通用串列匯流排接口112收發資料。通用串列匯流排介面轉換器120包含接口122及124,以及先進先出(First In First Out,FIFO)儲存裝置126。接口122可耦接於通用串列匯流排接口112。通用串列匯流排介面轉換器120可以根據通用串列匯流排的通訊規範自接口122收發資料,並根據先進先出的通訊規範自接口124收發資料。
也就是說,通用串列匯流排介面轉換器120可以在通用串列匯流排及先進先出兩種不同的通訊格式之間轉換。舉例來說,通用串列匯流排介面轉換器120可以自接口122接收資料,再根據通用串列匯流排的通訊規範解析其中的資料,並將資料儲存在先進先出儲存裝置126中,接著再根據先進先出的通訊規範將先進先出儲存裝置126中的資料透過接口124向外發送。反之,通用串列匯 流排介面轉換器120也可將接口124所接收到的資料儲存在先進先出儲存裝置126中,再根據通用串列匯流排的通訊規範將其中的資料封裝後,經由接口122發送。
先進先出介面轉換器130包含接口132及134。接口132可耦接至接口124。先進先出介面轉換器130可根據先進先出的通訊規範自接口132收發資料,並根據可程式化邏輯陣列板FB內部所使用的特定匯流排的通訊規範自接口134收發資料。也就是說,先進先出介面轉換器130可以在先進先出的通訊規範及特定匯流排兩種通訊格式之間轉換。在有些實施例中,可程式化邏輯陣列板FB內部所使用的特定匯流排可以例如但不限於為進階微處理器匯流排架構(Advanced Microcontroller Bus Architecture,AMBA)所規範的匯流排或是開放核心協定(Open Core Protocol,OPC)所規範的匯流排,其中進階微處理器匯流排架構所規範的匯流排包含進階擴充介面(Advanced Extensible Interface,AXI)匯流排、進階周邊匯流排(Advanced Peripheral Bus,APB)及進階高效能匯流排(Advanced High-performance Bus,AHB)。
匯流排橋接電路150耦接於接口134及功能電路1401至140N。在有些實施例中,功能電路1401至140N可以各自執行對應的功能。舉例來說,功能電路1401可以是記憶體,功能電路1402可以是周邊裝置、功能電路1403可以是中央處理器(Central Processing Unit,CPU)、功能電路1404可以是繪圖處理器(Graphic Processing Unit,GPU),而功能電路140N可以是數位訊號處理器(Digital Signal Processor,DSP)。然而,在其他的實施例中,功能電路1401至140N也可能是其他功能的電路。
匯流排橋接電路150可以根據特定匯流排的規範將自接口134所接收到的資料傳送功能電路1401至140N中的對應功能電路,並可將對應功能電路所發送的資料傳送至接口134,並進一步透過先進先出介面轉換器130及通用串列 匯流排介面轉換器120傳送至主控端110。
也就是說,主控端110可以透過通用串列匯流排接口112來收發資料,通用串列匯流排介面轉換器120可將通用串列匯流排的資料轉換為先進先出的傳輸格式並傳送至先進先出介面轉換器130,而先進先出介面轉換器130則可進一步將先進先出的傳輸格式轉換為可程式化邏輯陣列板FB內部的匯流排格式。如此一來,資料傳輸系統100就能夠在主控端110及可程式化邏輯陣列板FB的功能電路1401至140N之間以較高的頻寬進行資料傳輸,且無須透過乙太網路的方式傳輸,也無須另外設置複雜的驅動裝置及硬體元件。
在有些實施例中,為使通用串列匯流排介面轉換器120及先進先出介面轉換器130能夠在對應的通訊規範之間轉換,並取得所需的資料,資料傳輸系統100可規定主控端110須以固定的資料封包格式來傳輸資料。舉例來說,主控端110自通用串列匯流排接口112傳送的資料封包可包含指令欄位、位址欄位、資料長度欄位、資料欄位及檢查欄位。
指令欄位可以記錄主控端110所欲執行的指令,例如為寫入指令或讀取指令。位址欄位可記錄對應於前述指令的位址,例如寫入的位址或讀取的位址。資料欄位可記錄對應於指令的至少一筆資料,例如欲寫入的資料。由於在讀取操作中,主控端110是接收資料的一方,因此此時資料欄位可能為空白或被省略。資料長度欄位可以記錄資料的長度,例如欲寫入或欲讀取的資料長度,以便進行突發寫入(burst write)或突發讀取(burst read)的操作。此外,檢查欄位則可記錄查核碼以檢驗資料傳輸的正確性,例如以校驗和(Check Sum)或循環冗於校驗(Cyclic Redundancy Check,CRC)的方式進行。然而,在有些實施例中,倘若資料的正確性無須經過驗證,則亦可將檢查欄位省略。
在有些實施例中,資料封包中的指令欄位可與先進先出儲存裝置126具有相同的位元寬度,因此當通用串列匯流排介面轉換器120解析資料封包時, 可直接將指令欄位中的指令直接推入(push)先進先出儲存裝置126。舉例來說,先進先出儲存裝置126的位元寬度若為8位元,表示先進先出儲存裝置126在同時間可以並行傳輸8位元的資料,而資料傳輸系統100亦可定義指令欄位的位元數亦為8位元,以便通用串列匯流排介面轉換器120與先進先出介面轉換器130之間的傳輸。
第2圖是本發明一實施例之通用串列匯流排介面轉換器120及先進先出介面轉換器130的接腳示意圖。在第2圖中,通用串列匯流排介面轉換器120的接口124可包含時脈接腳1241、非空接腳1242、滿載接腳1243、排出(pop)接腳1244、推入接腳1245、複數個資料接腳1246、及輸出致能接腳1247,而相對的,先進先出介面轉換器130的接口132也可包含對應的時脈接腳1321、非空接腳1322、滿載接腳1323、排出(pop)接腳1324、推入接腳1325、複數個資料接腳1326、及輸出致能接腳1327。
在有些實施例中,時脈接腳1321可以接收時脈接腳1241傳來的時脈訊號SIGCLK,以便辨識在資料接腳1246及1326之間傳輸的資料。非空接腳1322可以接收非空接腳1242傳來的非空訊號SIGNEMP以得知目前先進先出儲存裝置126是否儲存有資料。滿載接腳1323則可接收滿載接腳1243傳來的滿載訊號SIGFULL以得知目前先進先出儲存裝置126是否已存滿資料。排出接腳1324及推入接腳1325則可發出排出訊號SIGPOP及推入訊號SIGPUSH以控制先進先出儲存裝置126。由於複數個資料接腳1246及1326可以是雙向傳輸的接腳,因此可以透過輸出致能接腳1327傳送輸出致能訊號SIGOEN來指定資料傳輸的方向。然而本發明的接口124及132並不以第2圖所示的接腳為限,在本發明的其他實施例中,通用串列匯流排介面轉換器120及先進先出介面轉換器130的接口124及132也可能根據系統的需求而包含其他數量及/或種類的接腳。
舉例來說,當串列匯流排介面轉換器120將資料封包中各欄位的資料 依序推入先進先出儲存裝置126之後,通用串列匯流排介面轉換器120便可透過接口124中的非空接腳1242傳送先進先出非空訊號SIGNEMP至先進先出介面轉換器130。當先進先出介面轉換器130接收到先進先出非空訊號SIGNEMP時,先進先出介面轉換器130便可透過接口132的排出接腳1324向通用串列匯流排介面轉換器120傳送排出指令SIGPOP,並透過資料接腳1326取得先進先出儲存裝置126中所儲存的資料。在本實施例中,由於在資料封包中最先存放至先進先出儲存裝置126的應為指令欄位,因此先進先出介面轉換器130會先根據先進先出儲存裝置126所傳來的資料來判讀主控端110所發出的指令。
在第1圖中,先進先出介面轉換器130還可包含有限狀態機(Finite State Machine,FSM)138,有限狀態機138在閒置狀態(Idle)時,可以隨時監控非空接腳1342是否接收到先進先出非空訊號SIGNEMP,並在接收到非空訊號SIGNEMP之後,根據所判讀到的指令進入到對應的狀態中以執行對應的操作,例如寫入操作及讀取操作,並在操作完成之後回到閒置狀態。然而本發明不限定利用有限狀態機138來執行先進先出介面轉換器130的操作,在有些其他實施例中,先進先出介面轉換器130也可以利用其他類型的處理器或控制器來進行對應的操作。
當先進先出介面轉換器130判斷主控端110所傳來的指令為寫入指令時,先進先出介面轉換器130可透過接口132中的資料接口1326取得先進先出儲存裝置126中所儲存的資料以依序取得寫入位址、寫入資料長度及寫入資料。當先進先出介面轉換器130取得了寫入位址及寫入資料時,先進先出介面轉換器130便可經由匯流排橋接電路150將寫入資料傳送至寫入位址所對應的功能電路。如此一來,主控端110就可以對可程式化邏輯陣列板FB上的每一個功能電路1401至140N進行寫入操作。
在有些實施例中,主控端110可能會一次寫入多筆資料,此時寫入資 料長度會大於1,而先進先出介面轉換器130則可以根據寫入資料長度使匯流排橋接電路150進入突發寫入模式,以便將後續的多筆資料接續的寫入對應的功能電路。然而,在有些實施例中,若可程式化邏輯陣列板FB所使用的特定匯流排不支援突發寫入,則亦可固定將寫入資料長度設定為1。
此外,在有些實施例中,先進先出儲存裝置126在同時間的並行傳輸位元數可設計成與每一筆寫入資料的位元數相等,在此情況下,先進先出儲存裝置126每次排出的資料就剛好是一筆寫入資料,因此先進先出介面轉換器130可以直接將該筆寫入資料傳送至匯流排橋接電路150。然而,在有些實施例中,先進先出儲存裝置126在同時間的並行傳輸位元數會小於每一筆寫入資料的位元數,在此情況下,先進先出介面轉換器130會自先進先出儲存裝置126取得多次的資料,並將多次取得的資料合併成一筆完整的寫入資料之後,再將該筆寫入資料經由匯流排橋接電路150傳送至對應之功能電路。
舉例來說,若先進先出儲存裝置126的位元寬度為8位元,則接口124應包含8個資料接腳,因此先進先出儲存裝置126可以在同時間可以並行傳輸8位元的資料。在此情況下,若每一筆寫入資料具有32位元的數據,則先進先出介面轉換器130會連續自先進先出儲存裝置126接收四筆資料,再將這四筆資料合併為一筆完整的寫入資料,並傳送至匯流排橋接電路150以進行後續的傳輸。相似地,寫入位址的位元數也可能與先進先出儲存裝置126的位元寬度不同,而先進先出介面轉換器130也可自先進先出儲存裝置126分次取得全部的位址資料後,再合併成完整的寫入位址。
此外,當先進先出介面轉換器130判斷主控端110所傳來的指令為讀取指令時,先進先出介面轉換器130可以透過接口132取得先進先出儲存裝置126中所儲存的資料以取得讀取位址及讀取資料長度。接著,先進先出介面轉換器130便可經由匯流排橋接電路150自讀取位址所對應之功能電路接收讀取資料, 並將讀取資料透過接口132推入先進先出儲存裝置126。如此一來,主控端110就可以對可程式化邏輯陣列板FB上對應功能電路進行讀取操作。
在有些實施例中,主控端110可能會一次讀取多筆資料,此時讀取資料長度會大於1,而先進先出介面轉換器130則可以根據讀取資料長度使匯流排橋接電路150進入突發讀取模式,以便從連續對應的功能電路讀取多筆讀取資料。然而,在有些實施例中,若可程式化邏輯陣列板FB所使用的特定匯流排不支援突發讀取,則亦可固定將讀取資料長度設定為1。
此外,在有些實施例中,先進先出儲存裝置126在同時間的並行傳輸位元數可設計成與每一筆讀取資料的位元數相等,在此情況下,先進先出介面轉換器130每次都可以直接推入一筆完整的讀取資料至先進先出儲存裝置126。然而,在有些實施例中,先進先出儲存裝置126在同時間的並行傳輸位元數會小於每一筆讀取資料的位元數,在此情況下,先進先出介面轉換器130則會將讀取資料分成複數筆資料,並依次透過接口132推入先進先出儲存裝置126。
在有些實施例中,主控端110除了可以對可程式化邏輯陣列板FB上的功能電路1401至140N進行寫入操作及讀取操作之外,也可以對先進先出介面轉換器130進行類似的操作。舉例來說,先進先出介面轉換器130可包含至少一個組態暫存器,例如在第1圖中,先進先出介面轉換器130可包含組態暫存器1361至136M,其中M為大於1的整數。每一個組態暫存器可對應到先進先出介面轉換器130的一種組態,例如組態暫存器1361可能對應到先進先出介面轉換器130的傳輸速度以及資料是否有校驗的控制或者校驗結果的狀態等,而組態暫存器1362可能對應到先進先出介面轉換器130的傳輸位元寬。在此情況下,透過對組態暫存器1361至136M寫入適當的數值,就可以將先進先出介面轉換器130控制在所需的組態。
在有些實施例中,當主控端110欲對先進先出介面轉換器130的組態 暫存器1361至136M進行寫入操作時,仍然可以利用前述資料封包的格式來進行。當先進先出介面轉換器130判讀主控端110所傳來的指令為組態寫入指令時,先進先出介面轉換器130便可透過接口132取得先進先出儲存裝置126中所儲存的資料以取得組態寫入位址及組態寫入資料。接著,先進先出介面轉換器130便可將該筆組態寫入資料寫入組態寫入位址所對應之組態暫存器,進而改變先進先出介面轉換器130的組態。
相對地,當先進先出介面轉換器130判讀主控端110所傳來的指令為組態讀取指令時,先進先出介面轉換器130便可透過接口132取得先進先出儲存裝置126中所儲存的資料以取得組態讀取位址,並可將組態讀取位址所對應之組態暫存器所儲存的資料透過接口132推入先進先出儲存裝置126,而通用串列匯流排介面轉換器120則可將組態暫存器所儲存的資料回傳給主控端110以使主控端110能夠掌握先進先出介面轉換器130的現行組態。
如此一來,主控端110就可以對先進先出介面轉換器130的組態暫存器1361至136M進行寫入及讀取操作,進而控制先進先出介面轉換器130的組態。在有些實施例中,倘若先進先出介面轉換器130只有固定的一種組態,或不開放讓主控端110進行控制,則也可省略先進先出介面轉換器130中的組態暫存器1361至136M及/或將有限狀態機138中對應操作的狀態省略。
綜上所述,本發明之實施例所提供的資料傳輸系統可以讓電腦主機及可程式化邏輯陣列板之間以通用串列匯流排的方式傳輸資料,因此可以提升資料傳輸的速度。此外,相較於乙太網路傳輸所需的複雜驅動裝置及硬體元件,本發明的資料傳輸系統可利用功能較為單純的通用串列匯流排介面轉換器及先進先出介面轉換器來進行不同通訊規範之間的轉換,因此也可以簡化資料傳輸系統的複雜度。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化 與修飾,皆應屬本發明之涵蓋範圍。
100:資料傳輸系統
110:主控端
112:通用串列匯流排接口
120:通用串列匯流排介面轉換器
122、124、132、134:接口
126:先進先出儲存裝置
130:先進先出介面轉換器
138:有限狀態機
1361至136M:組態暫存器
1401至140N:功能電路
150:匯流排橋接電路
FB:可程式化邏輯陣列板
MB:電路板

Claims (10)

  1. 一種資料傳輸系統,包含:一主控端,包含一通用串列匯流排(Universal Serial Bus,USB)接口,該主控端用以根據通用串列匯流排的通訊規範自該通用串列匯流排接口收發資料;一通用串列匯流排介面轉換器,包含:一第一接口,耦接於該通用串列匯流排接口;一第二接口;及一先進先出(First In First Out,FIFO)儲存裝置,用以儲存由該第一接口及該第二接口所接收的資料;其中該通用串列匯流排介面轉換器用以根據通用串列匯流排的通訊規範自該第一接口收發資料,及根據先進先出的通訊規範自該第二接口收發資料;一先進先出介面轉換器,包含:一第三接口,耦接於該第二接口;及一第四接口;其中該先進先出介面轉換器用以根據先進先出的通訊規範自該第三接口收發資料,及根據一可程式化邏輯陣列板所使用之一匯流排的通訊規範自該第四接口收發資料;複數個功能電路,每一功能電路用以執行一對應功能;及一匯流排橋接電路,耦接於該第四接口及該些功能電路,用以將自該第四接口所接收到的資料傳送至該些功能電路中的一對應功能電路,及將該對應功能電路所發送的資料傳送至該第四接口。
  2. 如請求項1所述之資料傳輸系統,其中該主控端自該通用串列匯流排接口傳送一資料封包,該資料封包包含:一指令欄位,用以記錄一指令;一位址欄位,用以記錄對應於該指令的一位址;一資料欄位,用以記錄對應於該指令的至少一筆資料;及一資料長度欄位,用以記錄該至少一筆資料的資料長度。
  3. 如請求項1或2所述之資料傳輸系統,其中:該通用串列匯流排介面轉換器另用以當該先進先出儲存裝置中儲存有資料時,透過該第二接口向該先進先出介面轉換器發出一先進先出非空訊號;及當該先進先出介面轉換器接收到該先進先出非空訊號時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以判讀一指令。
  4. 如請求項3所述之資料傳輸系統,其中:當該先進先出介面轉換器判讀該指令為一寫入指令時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一寫入位址及至少一筆寫入資料;及該先進先出介面轉換器另用以經由該匯流排橋接電路將該至少一筆寫入資料傳送至該寫入位址所對應之一功能電路。
  5. 如請求項4所述之資料傳輸系統,其中:當該先進先出介面轉換器判讀該指令為該寫入指令時,該先進先出介面轉 換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一寫入資料長度;及該先進先出介面轉換器另用以根據該寫入資料長度使該匯流排橋接電路進入一突發寫入(burst write)模式。
  6. 如請求項4所述之資料傳輸系統,其中:該先進先出儲存裝置在同時間的並行傳輸位元數小於每一筆寫入資料的位元數,且該先進先出介面轉換器另用以將複數次自該先進先出儲存裝置所取得的資料合併成一筆寫入資料之後,再將該筆寫入資料經由該匯流排橋接電路傳送至該寫入位址所對應之該功能電路。
  7. 如請求項3所述之資料傳輸系統,其中:當該先進先出介面轉換器判讀該指令為一讀取指令時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一讀取位址;該先進先出介面轉換器另用以經由該匯流排橋接電路自該讀取位址所對應之一功能電路接收至少一筆讀取資料;及該先進先出介面轉換器另用以將該至少一筆讀取資料透過該第三接口推入(push)該先進先出儲存裝置。
  8. 如請求項7所述之資料傳輸系統,其中:當該先進先出介面轉換器判讀該指令為該讀取指令時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一讀取資料長度;及 該先進先出介面轉換器另用以根據該讀取資料長度使該匯流排橋接電路進入一突發讀取(burst read)模式。
  9. 如請求項7所述之資料傳輸系統,其中:該先進先出儲存裝置在同時間的並行傳輸位元數小於每一筆讀取資料的位元數,且該先進先出介面轉換器另用以將該讀取資料分成複數筆資料並依次透過該第三接口推入該先進先出儲存裝置。
  10. 如請求項3所述之資料傳輸系統,其中:該先進先出介面轉換器另包含至少一組態暫存器;當該先進先出介面轉換器判讀該指令為一組態寫入指令時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一組態寫入位址及一筆組態寫入資料;該先進先出介面轉換器另用以將該筆組態寫入資料寫入該組態寫入位址所對應之一組態暫存器;當該先進先出介面轉換器判讀該指令為一組態讀取指令時,該先進先出介面轉換器另用以透過該第三接口取得該先進先出儲存裝置中所儲存的資料以取得一組態讀取位址;及該先進先出介面轉換器另用以將該組態讀取位址所對應之一組態暫存器所儲存的資料透過該第三接口推入該先進先出儲存裝置。
TW108148309A 2019-11-25 2019-12-30 資料傳輸系統 TWI727581B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911166661.0 2019-11-25
CN201911166661.0A CN112835834B (zh) 2019-11-25 2019-11-25 数据传输系统

Publications (2)

Publication Number Publication Date
TWI727581B true TWI727581B (zh) 2021-05-11
TW202121181A TW202121181A (zh) 2021-06-01

Family

ID=75922849

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108148309A TWI727581B (zh) 2019-11-25 2019-12-30 資料傳輸系統

Country Status (3)

Country Link
US (1) US11169947B2 (zh)
CN (1) CN112835834B (zh)
TW (1) TWI727581B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114978810A (zh) * 2022-06-16 2022-08-30 深圳市欣博跃电子有限公司 基于混合网络的usb数据通信方法、装置及计算机设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200500864A (en) * 2003-06-05 2005-01-01 Nvidia Corp Processing data for a TCP connection using an offload unit
TW200527214A (en) * 2004-02-13 2005-08-16 Ene Technology Inc Access device with a multi-channel transmission
TW200532543A (en) * 2003-10-29 2005-10-01 Qualcomm Inc High data rate interface
TW200534098A (en) * 2003-12-10 2005-10-16 Qualcomm Inc High data rate interface with improved link synchronization
US20100312952A1 (en) * 2006-08-18 2010-12-09 Cypress Semiconductor Corporation Multiprocessor System Having an Input/Output (I/O) Bridge Circuit for Transferring Data Between Volatile and Non-Volatile Memory
US20120079175A1 (en) * 2010-09-28 2012-03-29 Fusion-Io, Inc. Apparatus, system, and method for data transformations within a data storage device
US20140089697A1 (en) * 2012-09-27 2014-03-27 Soo Yong KIM System-on-chip with capability for controlling power supply according to data transaction and method of operating the same
TW201602794A (zh) * 2014-04-14 2016-01-16 矽像公司 利用音訊/視訊資料通道以雙向傳輸萬用序列匯流排資料
US20190073194A1 (en) * 2013-12-27 2019-03-07 Intel Corporation Scalable input/output system and techniques to transmit data between domains without a central processor
TW201915757A (zh) * 2017-10-11 2019-04-16 祥碩科技股份有限公司 橋接裝置與資料傳輸方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5903744A (en) 1997-05-15 1999-05-11 Logic Express System, Inc. Logic emulator using a disposable wire-wrap interconnect board with an FPGA emulation board
US6326806B1 (en) 2000-03-29 2001-12-04 Xilinx, Inc. FPGA-based communications access point and system for reconfiguration
US20070277036A1 (en) 2003-05-23 2007-11-29 Washington University, A Corporation Of The State Of Missouri Intelligent data storage and processing using fpga devices
US7817659B2 (en) * 2004-03-26 2010-10-19 Foundry Networks, Llc Method and apparatus for aggregating input data streams
US20060149870A1 (en) * 2004-12-30 2006-07-06 Randall Sears Parallel to USB bridge controller
CN100449504C (zh) * 2005-01-05 2009-01-07 华为技术有限公司 一种基于bitmap表的缓存管理方法
CN101087235A (zh) * 2007-07-17 2007-12-12 中南大学 一种基于fpga的多功能通信接口转换设备和方法
CN201594256U (zh) * 2009-08-17 2010-09-29 谭慧君 Usb接口与显示接口转换装置
US8595406B2 (en) * 2010-10-21 2013-11-26 Marvell World Trade Ltd. USB-to-SATA high-speed bridge
US8843664B2 (en) * 2011-09-29 2014-09-23 Cypress Semiconductor Corporation Re-enumeration of USB 3.0 compatible devices
US9239808B2 (en) 2011-12-15 2016-01-19 Marvell World Trade Ltd. Serial interface for FPGA prototyping
FR2984657B1 (fr) * 2011-12-19 2014-01-10 Kalray Systeme d'emission de flots de donnees concurrents sur un reseau
KR101720134B1 (ko) * 2011-12-21 2017-03-28 한국전자통신연구원 버스 브리지 장치
US9304730B2 (en) 2012-08-23 2016-04-05 Microsoft Technology Licensing, Llc Direct communication between GPU and FPGA components
US9864606B2 (en) * 2013-09-05 2018-01-09 F5 Networks, Inc. Methods for configurable hardware logic device reloading and devices thereof
US10007485B2 (en) * 2016-01-12 2018-06-26 Oracle International Corporation Zero-delay compression FIFO buffer
CN107103472B (zh) * 2017-04-26 2021-03-19 北京计算机技术及应用研究所 一种用于区块链的算法处理模块

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200500864A (en) * 2003-06-05 2005-01-01 Nvidia Corp Processing data for a TCP connection using an offload unit
TW200532543A (en) * 2003-10-29 2005-10-01 Qualcomm Inc High data rate interface
TW200534098A (en) * 2003-12-10 2005-10-16 Qualcomm Inc High data rate interface with improved link synchronization
TW200527214A (en) * 2004-02-13 2005-08-16 Ene Technology Inc Access device with a multi-channel transmission
US20100312952A1 (en) * 2006-08-18 2010-12-09 Cypress Semiconductor Corporation Multiprocessor System Having an Input/Output (I/O) Bridge Circuit for Transferring Data Between Volatile and Non-Volatile Memory
US20120079175A1 (en) * 2010-09-28 2012-03-29 Fusion-Io, Inc. Apparatus, system, and method for data transformations within a data storage device
US20140089697A1 (en) * 2012-09-27 2014-03-27 Soo Yong KIM System-on-chip with capability for controlling power supply according to data transaction and method of operating the same
US20190073194A1 (en) * 2013-12-27 2019-03-07 Intel Corporation Scalable input/output system and techniques to transmit data between domains without a central processor
TW201602794A (zh) * 2014-04-14 2016-01-16 矽像公司 利用音訊/視訊資料通道以雙向傳輸萬用序列匯流排資料
TW201915757A (zh) * 2017-10-11 2019-04-16 祥碩科技股份有限公司 橋接裝置與資料傳輸方法

Also Published As

Publication number Publication date
US20210157759A1 (en) 2021-05-27
US11169947B2 (en) 2021-11-09
CN112835834B (zh) 2024-03-19
CN112835834A (zh) 2021-05-25
TW202121181A (zh) 2021-06-01

Similar Documents

Publication Publication Date Title
CN110471872B (zh) 一种基于zynq芯片实现m-lvds总线数据交互系统和方法
US7152136B1 (en) Implementation of PCI express
JPH02227766A (ja) デジタル・コンピユータのデータ転送装置
JPH02227765A (ja) デジタル・コンピユータのデータ転送装置
US7779194B2 (en) Data modification module
US20030081391A1 (en) Simplifying integrated circuits with a common communications bus
CN113489594B (zh) 基于fpga模块的pcie实时网卡
EP2724241A1 (en) Interface extender for portable electronic devices
TWI727581B (zh) 資料傳輸系統
CN117056249B (zh) 一种mdio到ahb的转换方法、系统、设备及介质
EP1275049B1 (en) Modular computer system
TW201810037A (zh) 輸入輸出擴展晶片以及其驗證方法
US6473818B1 (en) Apparatus and method in a network interface device for asynchronously generating SRAM full and empty flags using coded read and write pointer values
US6622191B1 (en) Computer system
US6898659B2 (en) Interface device having variable data transfer mode and operation method thereof
CN117194289A (zh) 一种基于fmql的多通道可重构数据传输装置
CN210155653U (zh) 基于zynq芯片实现m-lvds总线数据交互装置
US8176310B2 (en) Debugger application configured to communicate with a debugger module via a GPIO
CN116166581A (zh) 用于pcie总线的队列式dma控制器电路及数据传输方法
Swaminathan et al. Design of a low power network interface for Network on chip
CN100462952C (zh) 接口可配置的通用串行总线控制器
Huang Design and Implementation of IIC Interface IP Core
US20060004936A1 (en) Bridge for enabling communication between a FIFO interface and a PL3 bus for a network processor and an I/O card
CN115543908B (zh) 基于FPGA的Aurora总线数据交互系统
Wu et al. A flexible FPGA-to-FPGA interconnect interface design and implementation