TWI831340B - 快速初始化裝置與方法以及積體電路設計驗證系統 - Google Patents
快速初始化裝置與方法以及積體電路設計驗證系統 Download PDFInfo
- Publication number
- TWI831340B TWI831340B TW111131904A TW111131904A TWI831340B TW I831340 B TWI831340 B TW I831340B TW 111131904 A TW111131904 A TW 111131904A TW 111131904 A TW111131904 A TW 111131904A TW I831340 B TWI831340 B TW I831340B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- initialization
- unit
- queue
- integrated circuit
- Prior art date
Links
- 238000012942 design verification Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 title description 14
- 238000012795 verification Methods 0.000 claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims description 11
- 230000002093 peripheral effect Effects 0.000 claims description 5
- 230000008878 coupling Effects 0.000 claims description 4
- 238000010168 coupling process Methods 0.000 claims description 4
- 238000005859 coupling reaction Methods 0.000 claims description 4
- 238000004088 simulation Methods 0.000 abstract description 22
- 238000013461 design Methods 0.000 abstract description 11
- 238000012360 testing method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本發明主要揭示一種快速初始化裝置,係應用於包含一驗證平台以及一控制單元的一積體電路設計驗證系統之中,其中該驗證平台用以對包含複數個電路模塊的一積體電路進行模擬驗證,且該快速初始化裝置係耦接該驗證平台,並包括一初始化數據提供單元以及N個初始化單元。依據本發明之設計,該初始化數據提供單元係用以提供一初始化數據至j個初始化單元(j≦N),使j個所述初始化單元同時對j個所述電路模塊進行一初始化操作。簡單地說,本發明之快速初始化裝置係用以對位於該驗證平台之中的該積體電路所包含的該複數個電路模塊進行一並行初始化操作,可以大幅縮短完成初始化所需時間,從而節省該控制單元的運算資源,並提高積體電路的模擬驗證之速度。
Description
本發明為積體電路之設計驗證的相關技術領域,尤指用以對一個積體電路設計所包含的複數個電路模塊同時並行初始化的一種快速初始化裝置。
隨著消費性電子產品和車用電子產品對於積體電路晶片的功能性要求的不斷提高,積體電路晶片所包含的電路集成規模也越來越大,導致電路複雜程度也越來越高。同時,由於消費市場電子產品市場對於積體電路晶片的用量需求係逐年攀高,使得開發團隊在積體電路晶片的項目開發的壓力也隨之增加。
因此,隨著電路集成規模越來越大,一個積體電路晶片通常會包含複數個電路模塊,分別由不同的工程師負責設計。熟悉積體電路晶片之設計開發的電子工程師應知道,一個積體電路晶片的項目開發係包括以下幾個階段:產品規劃階段、設計與模擬驗證階段、design flow階段、以及晶片製造與測試階段。其中,在設計與模擬驗證階段,工程師首先利用Verilog完成其負責設計的電路模塊之RTL電路設計(即,RTL coding),並接著利用一積體電路設計驗證系統執行模擬驗證以檢查RLT coding的正確性。
熟悉積體電路晶片之設計開發的電子工程師還知道,一個積體電路晶片包含複數個寄存器,作為複數個電路模塊之間的交互接口。因此,對特定的電路模塊進行模擬驗證時,係通常執行:(1) 通過讀出寄存器的當前值以確認測試中的電路模塊(即,DUT)的當前狀態;及/或(2)通過對寄存器進行配置,從而使測試中的電路模塊工作在一定模式下。因此,在單次模擬驗證的過程中,必須多次地對一個或多個寄存器進行讀操作和寫操作。
具體而言,一個積體電路設計驗證系統包含一控制單元與一驗證平台(test bench)11,其中驗證平台可利用系統級硬體描述語言(System Verilog)和通用驗證方法(Universal verification methodology, UVM)搭建。在進行模擬驗證時,該控制單元通過運行一初始化代碼,順序地初始化各個電路模塊,因此需要花費不少時間才足以完成所有電路模塊的初始化。實務經驗顯示,在單次模擬驗證的過程中,接近一半的時間消耗在對各個電路模塊的初始化。
有鑑於此,習知技術針對電路模塊初始化的加速方法包括:後門初始化(backdoor)方法以及存儲恢復(save & restore)方法。可惜的是,實務上,後門初始化方法不包含初始化過程中總線(如:APB、AHB、AXI、OCP等)上的激勵和應答,因此不能滿足模擬驗證對於覆蓋率的要求。另一方面, 存儲恢復方法的有關技術尚未成熟,在應用過程中很容易引入新的問題,導致模擬驗證失敗。
由上述說明可知,本領域亟需一種快速初始化裝置。
本發明之主要目的在於提供一種快速初始化裝置,其應用於包含一驗證平台以及一控制單元的一積體電路設計驗證系統之中,其中該驗證平台用以對包含複數個電路模塊的一積體電路進行模擬驗證。本發明之快速初始化裝置係用以對位於該積體電路所包含的該複數個電路模塊進行一並行初始化操作,可以大幅縮短完成初始化所需時間,從而節省模擬驗證所消耗的運算資源,並提高積體電路的模擬驗證之速度。
為達成上述目的,本發明提出所述快速初始化裝置的一實施例,其係應用於包含一驗證平台以及一控制單元的一積體電路設計驗證系統之中,其中該驗證平台用以對包含複數個電路模塊的一積體電路進行模擬驗證,且該快速初始化裝置係耦接該驗證平台,並包括:
一初始化數據提供單元;以及
N個初始化單元,其中各所述初始化單元皆耦接該初始化數據提供單元,且具有一直接編程介面(Direct programming interface, DPI)用以和所述電路模塊的一通用介面耦接;
其中,依據該初始化數據提供單元所提供的一初始化數據,j個所述初始化單元係同時對j個所述電路模塊進行一初始化操作;
其中,j、N皆為正整數,且j≦N。
在一實施例中,所述初始化單元包括:
一數據解譯單元,耦接該初始化數據提供單元,且對該初始化數據進行一數據解譯操作,從而至少獲得一寄存器地址、一寫隊列配置數據、以及一讀隊列配置數據;
一隊列單元,耦接該數據解譯單元,且包括一寫隊列介面與一讀隊列介面;
一隊列配置單元,耦接該隊列單元,其中,該隊列配置單元透過該寫隊列介面接收所述寫隊列配置數據,從而依據該寫隊列配置數據生成一寫隊列數據,且該隊列配置單元透過該讀隊列介面接收所述讀隊列配置數據,從而依據該讀隊列配置數據生成一讀隊列數據;以及
一驅動器單元,具有所述直接編程介面,且耦接該隊列配置單元以接收該寫隊列數據與該讀隊列數據,其中,該驅動器單元依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至一個所述電路模塊的該通用介面。
在一實施例中,所述通用數據傳輸協定為選自於由高級外圍匯流排(Advanced Peripheral Bus, ABS)協定、高級高效能匯流排(Advanced High-performance Bus, AHB)協定、高級系統匯流排(Advanced System Bus, ASB)協定、晶片間匯流排(Inter-Integrated Circuit Bus, I2C)協定、和開放核協定(Open Core Protocol, OCP)所組成群組之中的任一種。
在一實施例中,執行該數據解譯操作時,該數據解譯單元係運行一數據解譯腳本,進而依據一寄存器描述文件自該初始化數據解譯出該寄存器地址、該寫隊列配置數據、以及該讀隊列配置數據。
在一實施例中,該控制單元係同時包含一串行初始化單元,該串行初始化單元用以對至少二個所述電路模塊執行一串型初始化操作。
在一實施例中,該積體電路具有一晶片架構,且該晶片架構為選自於由進階精簡指令集機器(Advanced RISC Machine, ARM)架構、基於精簡指令集原則的開源指令集(RISC-V)架構和無內部互鎖流水級的微處理器(Microprocessor without interlocked pipelined stages, MIPS)架構所組成群組之中的任一者。
並且,本發明同時提供一種積體電路設計驗證系統的一實施例,其包含一驗證平台與一控制單元,其特徵在於,該積體電路設計驗證系統進一步包含:耦接該驗證平台的一快速初始化裝置,其中,該快速初始化裝置用以對位於該驗證平台之中的一積體電路所包含的複數個電路模塊進行一並行初始化操作,且包括:
一初始化數據提供單元;以及
N個初始化單元,其中各所述初始化單元皆耦接該初始化數據提供單元,且具有一直接編程介面(Direct programming interface, DPI)用以和所述電路模塊的一通用介面耦接;
其中,依據該初始化數據提供單元所提供的一初始化數據,j個所述初始化單元係同時對j個所述電路模塊進行一初始化操作;
其中,j、N皆為正整數,且j≦N。
在一實施例中,所述初始化單元包括:
一數據解譯單元,耦接該初始化數據提供單元,且對該初始化數據進行一數據解譯操作,從而至少獲得一寄存器地址、一寫隊列配置數據、以及一讀隊列配置數據;
一隊列單元,耦接該數據解譯單元,且包括一寫隊列介面與一讀隊列介面;
一隊列配置單元,耦接該隊列單元,其中,該隊列配置單元透過該寫隊列介面接收所述寫隊列配置數據,從而依據該寫隊列配置數據生成一寫隊列數據,且該隊列配置單元透過該讀隊列介面接收所述讀隊列配置數據,從而依據該讀隊列配置數據生成一讀隊列數據;以及
一驅動器單元,具有所述直接編程介面,且耦接該隊列配置單元以接收該寫隊列數據與該讀隊列數據,其中,該驅動器單元依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至一個所述電路模塊的該通用介面。
在一實施例中,所述通用數據傳輸協定為選自於由高級外圍匯流排(Advanced Peripheral Bus, ABS)協定、高級高效能匯流排(Advanced High-performance Bus, AHB)協定、高級系統匯流排(Advanced System Bus, ASB)協定、晶片間匯流排(Inter-Integrated Circuit Bus, I2C)協定、和開放核協定(Open Core Protocol, OCP)所組成群組之中的任一種。
在一實施例中,執行該數據解譯操作時,該數據解譯單元係運行一數據解譯腳本,進而依據一寄存器描述文件自該初始化數據解譯出該寄存器地址、該寫隊列配置數據、以及該讀隊列配置數據。
在一實施例中,該控制單元係同時包含一串行初始化單元,該串行初始化單元用以對至少二個所述電路模塊執行一串型初始化操作。
在一實施例中,該積體電路具有一晶片架構,且該晶片架構為選自於由進階精簡指令集機器(Advanced RISC Machine, ARM)架構、基於精簡指令集原則的開源指令集(RISC-V)架構和無內部互鎖流水級的微處理器(Microprocessor without interlocked pipelined stages, MIPS)架構所組成群組之中的任一者。
為使 貴審查委員能進一步瞭解本發明之結構、特徵、目的、與其優點,茲附以圖式及較佳具體實施例之詳細說明如後。
圖1顯示包含本發明之一種快速初始化裝置的一積體電路設計驗證系統的方塊圖。如圖1所示,在一積體電路晶片的設計模擬驗證階段,包含一控制單元12與一驗證平台11的一積體電路設計驗證系統1被搭建用於對一積體電路執行模擬驗證,其中該積體電路包含複數個電路模塊,且各所述電路模塊例如為利用Verilog所完成的RTL電路模塊。具體而言,該控制單元12例如為一雲端伺服器,且該驗證平台11可利用系統級硬體描述語言(System Verilog)和通用驗證方法(Universal verification methodology, UVM)搭建在一工作站之中。如圖1所示,該控制單元12包括:用以儲存複數個代碼文件的文件庫121、包含複數個測試向量的測試單元122、用以儲存測試數據的數據庫123、以及一串行初始化單元124。
在可行的實施例中,該積體電路3具有一晶片架構,且該晶片架構可以是進階精簡指令集機器(Advanced RISC Machine, ARM)架構、基於精簡指令集原則的開源指令集(RISC-V)架構、或無內部互鎖流水級的微處理器(Microprocessor without interlocked pipelined stages, MIPS)架構。
熟悉積體電路設計的工程師應知道,各所述電路模塊的RLT coding係以一代碼文件的形式存放在該文件庫121內。對該複數個電路模塊進行模擬驗證時,若部分的電路模塊的電路功能前、後依賴關係,則該控制單元12啟用其初始化單元124對這些電路模塊進行串行初始化操作。然而,實務上,大多數的電路模塊在功能上並不相關塊,因此可以採用本發明之快速初始化裝置2對於這些電路模塊進行並行初始化操作。具體而言,進行並行初始化操作之時,本發明之快速初始化裝置2係同時在多個電路模塊的數據傳輸介面施加激勵,繞過了串行初始化操作均從該控制單元12發出的限制。
圖2為本發明之一種快速初始化裝置的方塊圖。如圖1與圖2所示,本發明之該快速初始化裝置2係耦接該驗證平台11,並包括一初始化數據提供單元22以及N個初始化單元21,其中j、N皆為正整數,且j≦N。依據本發明之設計,各所述初始化單元21皆耦接該初始化數據提供單元22,且具有一直接編程介面(Direct programming interface, DPI)210用以和所述電路模塊31的一通用介面310耦接。特別地,該初始化數據提供單元22用以將原本用以進行串行初始化操作的一串行初始化代碼轉換成一初始化數據,接著將該初始化數據提供至j個所述初始化單元21(j≦N),從而利用j個所述初始化單元21完成對於j個所述電路模塊31的一並行初始化操作。實務上,由於SystemC與System Verilog之間的TLM模型可以實現通信,因此,實務上可以利用SystemC建立一事務層級模型(Transaction level model, TLM),並將所述N個初始化單元21包含於該事務層級模型之中。
應知道,對該積體電路3之中一個電路模塊31進行模擬驗證時,係通常執行:(1) 通過讀出寄存器的當前值以確認測試中的電路模塊31(即,DUT)的當前狀態;及/或(2)通過對寄存器進行配置,從而使測試中的電路模塊31工作在一定模式下。因此,該初始化數據至少包含寄存器地址、用以進行寫操作的寫隊列配置數據、以及用以進行讀操作的讀隊列配置數據。圖3為圖2所示的初始化單元的方塊圖。如圖2與圖3所示,各初始化單元21包括:一數據解譯單元211、一隊列單元212、一隊列配置單元213、以及一驅動器單元214,其中該數據解譯單元211耦接該初始化數據提供單元22,且對該初始化數據進行一數據解譯操作,從而至少獲得一寄存器地址、一寫隊列(queues)配置數據、以及一讀隊列配置數據。
具體而言,各所述電路模塊31至少具有一狀態寄存器與一配置寄存器。因此,可預先製作一份寄存器描述文件,文件中包含各所述電路模塊31的寄存器的地址、域、屬性等信息。並且,還可預先編輯一數據解譯腳本,使該數據解譯單元211通過運行該數據解譯腳本,進而依據該寄存器描述文件自該初始化數據解譯出該寄存器地址、該寫隊列配置數據、以及該讀隊列配置數據。更詳細地說明,該隊列單元212耦接該數據解譯單元211,且包括一寫隊列介面2121與一讀隊列介面2122。並且,該隊列配置單元213耦接該隊列單元212,其中,該隊列配置單元213透過該寫隊列介面2121接收所述寫隊列配置數據,從而依據該寫隊列配置數據生成(或配置)一寫隊列數據,且該隊列配置單元213透過該讀隊列介面2122接收所述讀隊列配置數據,從而依據該讀隊列配置數據配置一讀隊列數據。
如圖2與圖3所示,該驅動器單元214具有一DPI介面210,且耦接該隊列配置單元213以接收該寫隊列數據與該讀隊列數據。接著,該驅動器單元214依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至一個所述電路模塊31的該通用介面310。值得說明的是,在利用system C建模的情況下,工程師可以事先完成功能性單元的事務級別建模。舉例而言,對應電路模塊31的通用介面310可能為AHB介面、ABS介面或OCP介面,工程師可以利用system C事先建立好具有AHB介面的驅動器單元214、具有ABS介面的驅動器單元214與具有OCP介面的驅動器單元214,並在規劃建立各個所述初始化單元21之時自TLM庫之中調用掛載即可,這種方式極大的降低了開發的難度,並降低了出錯的概率。簡單地說,預先建模的該驅動器單元214具有一DPI介面210,使其可以依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至電路模塊31的通用介面310。在可行的實施例中,所述通用數據傳輸協定可以是高級外圍匯流排(Advanced Peripheral Bus, ABS)協定、高級高效能匯流排(Advanced High-performance Bus, AHB)協定、高級系統匯流排(Advanced System Bus, ASB)協定、晶片間匯流排( Inter-Integrated Circuit Bus, I2C)協定、或開放核協定(Open Core Protocol, OCP)。
為了支持多個(如j個)電路模塊31實現並行初始化,該積體電路1所包含的複數個所述電路模塊31都具有一讀隊列介面與一寫隊列介面。並且,只有在該電路模塊31第一次被訪問(即,初始化)之時,其讀隊列介面及/或寫隊列介面才會被激勵並啟用。在一般的模擬驗證中,不太有機會同時對所有電路模塊31進行初始化。因此,本發明之快速初始化裝置透過並行初始化操作,同時對j個電路模塊31進行初始化,激勵開啟了這些電路模塊31的讀隊列介面及/或寫隊列介面,保留了剩餘的N-j個電路模塊31的讀隊列介面及/或寫隊列介面未被開啟。可想而知,這樣的動態控制讀隊列介面及/或寫隊列介面的方式,可以極大節省模擬驗證所消耗的運算資源,並提高積體電路的模擬驗證之速度。
如此,上述係已完整且清楚地說明本發明之快速初始化裝置;並且,經由上述可得知本發明係具有下列之優點:
(1)本發明揭示一種快速初始化裝置,其應用於包含一驗證平台以及一控制單元的一積體電路設計驗證系統之中,其中該驗證平台用以對包含複數個電路模塊的一積體電路進行模擬驗證。本發明之快速初始化裝置係用以對位於該積體電路所包含的該複數個電路模塊進行一並行初始化操作,可以大幅縮短完成初始化所需時間,從而節省模擬驗證所消耗的運算資源,並提高積體電路的模擬驗證之速度。
(2)本發明同時提供一種電路模塊設計驗證系統,其包含一驗證平台與一控制單元,其特徵在於,該積體電路設計驗證系統進一步包含如前所述本發明之快速初始化裝置,該快速初始化裝置耦接該驗證平台,用以對位於該驗證平台之中的一積體電路所包含的複數個電路模塊進行一並行初始化操作。
必須加以強調的是,前述本案所揭示者乃為較佳實施例,舉凡局部之變更或修飾而源於本案之技術思想而為熟習該項技藝之人所易於推知者,俱不脫本案之專利權範疇。
綜上所陳,本案無論目的、手段與功效,皆顯示其迥異於習知技術,且其首先發明合於實用,確實符合發明之專利要件,懇請 貴審查委員明察,並早日賜予專利俾嘉惠社會,是為至禱。
1:電路模塊設計驗證系統
11:驗證平台
12:控制單元
121:文件庫
122:測試單元
123:數據庫
124:串行初始化單元
2:初始化裝置
21:初始化單元
210:DPI介面
211:解譯單元
212:隊列單元
213:隊列配置單元
214:驅動器單元
22:初始化數據提供單元
3:積體電路
31:電路模塊
310:通用介面
圖1為包含本發明之一種快速初始化裝置的一積體電路設計驗證系統的方塊圖;
圖2為本發明之一種快速初始化裝置的方塊圖;以及
圖3為圖2所示的初始化單元的方塊圖。
2:初始化裝置
21:初始化單元
210:DPI介面
22:初始化數據提供單元
3:積體電路
31:電路模塊
310:通用介面
Claims (10)
- 一種快速初始化裝置,係應用於包含一驗證平台以及一控制單元的一積體電路設計驗證系統之中,其中該驗證平台用以對包含複數個電路模塊的一積體電路進行模擬驗證,且該快速初始化裝置係耦接該驗證平台,並包括:一初始化數據提供單元;以及N個初始化單元,其中各所述初始化單元皆耦接該初始化數據提供單元,且具有一直接編程介面(Direct programming interface,DPI)用以和所述電路模塊的一通用介面耦接;其中,依據該初始化數據提供單元所提供的一初始化數據,j個所述初始化單元係同時對j個所述電路模塊進行一初始化操作;其中,j、N皆為正整數,且j≦N;所述初始化單元包括:一數據解譯單元,耦接該初始化數據提供單元,且對該初始化數據進行一數據解譯操作,從而至少獲得一寄存器地址、一寫隊列配置數據、以及一讀隊列配置數據;一隊列單元,耦接該數據解譯單元,且包括一寫隊列介面與一讀隊列介面;一隊列配置單元,耦接該隊列單元,其中,該隊列配置單元透過該寫隊列介面接收所述寫隊列配置數據,從而依據該寫隊列配置數據生成一寫隊列數據,且該隊列配置單元透過該讀隊列介面接收所述讀隊列配置數據,從而依據該讀隊列配置數據生成一讀隊列數據;以及 一驅動器單元,具有所述直接編程介面,且耦接該隊列配置單元以接收該寫隊列數據與該讀隊列數據,其中,該驅動器單元依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至一個所述電路模塊的該通用介面。
- 如請求項1所述之快速初始化裝置,其中,所述通用數據傳輸協定為選自於由高級外圍匯流排(Advanced Peripheral Bus,ABS)協定、高級高效能匯流排(Advanced High-performance Bus,AHB)協定、高級系統匯流排(Advanced System Bus,ASB)協定、晶片間匯流排(Inter-Integrated Circuit Bus,I2C)協定、和開放核協定(Open Core Protocol,OCP)所組成群組之中的任一種。
- 如請求項1所述之快速初始化裝置,其中,執行該數據解譯操作時,該數據解譯單元係運行一數據解譯腳本,進而依據一寄存器描述文件自該初始化數據解譯出該寄存器地址、該寫隊列配置數據、以及該讀隊列配置數據。
- 如請求項1所述之快速初始化裝置,其中,該控制單元係同時包含一串行初始化單元,該串行初始化單元用以對至少二個所述電路模塊執行一串行初始化操作。
- 如請求項1所述之快速初始化裝置,其中,該積體電路具有一晶片架構,且該晶片架構為選自於由進階精簡指令集機器(Advanced RISC Machine,ARM)架構、基於精簡指令集原則的開源指令集(RISC-V)架構和無內部互鎖流水級的微處理器 (Microprocessor without interlocked pipelined stages,MIPS)架構所組成群組之中的任一者。
- 一種積體電路設計驗證系統,包含一驗證平台與一控制單元,其特徵在於,該積體電路設計驗證系統進一步包含:耦接該驗證平台的一快速初始化裝置,其中,該快速初始化裝置用以對位於該驗證平台之中的一積體電路所包含的複數個電路模塊進行一並行初始化操作,且包括:一初始化數據提供單元;以及N個初始化單元,其中各所述初始化單元皆耦接該初始化數據提供單元,且具有一直接編程介面(Direct programming interface,DPI)用以和所述電路模塊的一通用介面耦接;其中,依據該初始化數據提供單元所提供的一初始化數據,j個所述初始化單元係同時對j個所述電路模塊進行一初始化操作;其中,j、N皆為正整數,且j≦N;所述初始化單元包括:一數據解譯單元,耦接該初始化數據提供單元,且對該初始化數據進行一數據解譯操作,從而至少獲得一寄存器地址、一寫隊列配置數據、以及一讀隊列配置數據;一隊列單元,耦接該數據解譯單元,且包括一寫隊列介面與一讀隊列介面;一隊列配置單元,耦接該隊列單元,其中,該隊列配置單元透過該寫隊列介面接收所述寫隊列配置數據,從而依據該寫隊列配置數據 生成一寫隊列數據,且該隊列配置單元透過該讀隊列介面接收所述讀隊列配置數據,從而依據該讀隊列配置數據生成一讀隊列數據;以及一驅動器單元,具有所述直接編程介面,且耦接該隊列配置單元以接收該寫隊列數據與該讀隊列數據,其中,該驅動器單元依據一通用數據傳輸協定將所述寫隊列數據或所述讀隊列數據發送至一個所述電路模塊的該通用介面。
- 如請求項6所述之積體電路設計驗證系統,其中,所述通用數據傳輸協定為選自於由高級外圍匯流排(Advanced Peripheral Bus,ABS)協定、高級高效能匯流排(Advanced High-performance Bus,AHB)協定、高級系統匯流排(Advanced System Bus,ASB)協定、晶片間匯流排(Inter-Integrated Circuit Bus,I2C)協定、和開放核協定(Open Core Protocol,OCP)所組成群組之中的任一種。
- 如請求項6所述之積體電路設計驗證系統,其中,執行該數據解譯操作時,該數據解譯單元係運行一數據解譯腳本,進而依據一寄存器描述文件自該初始化數據解譯出該寄存器地址、該寫隊列配置數據、以及該讀隊列配置數據。
- 如請求項6所述之積體電路設計驗證系統,其中,該控制單元係同時包含一串行初始化單元,該串行初始化單元用以對至少二個所述電路模塊執行一串行初始化操作。
- 如請求項6所述之積體電路設計驗證系統,其中,該積體電路具有一晶片架構,且該晶片架構為選自於由進階精簡指令集機器(Advanced RISC Machine,ARM)架構、基於精簡指令集原則的 開源指令集(RISC-V)架構和無內部互鎖流水級的微處理器(Microprocessor without interlocked pipelined stages,MIPS)架構所組成群組之中的任一者。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111131904A TWI831340B (zh) | 2022-08-24 | 2022-08-24 | 快速初始化裝置與方法以及積體電路設計驗證系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW111131904A TWI831340B (zh) | 2022-08-24 | 2022-08-24 | 快速初始化裝置與方法以及積體電路設計驗證系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI831340B true TWI831340B (zh) | 2024-02-01 |
TW202409882A TW202409882A (zh) | 2024-03-01 |
Family
ID=90824531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111131904A TWI831340B (zh) | 2022-08-24 | 2022-08-24 | 快速初始化裝置與方法以及積體電路設計驗證系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI831340B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW464566B (en) * | 1999-06-16 | 2001-11-21 | Uddeholm Tooling Ab | Powder metallurgy manufactured high speed steel |
TW200836212A (en) * | 2006-10-20 | 2008-09-01 | Honeywell Int Inc | Faster initialization of DRAM memory |
TWI675368B (zh) * | 2018-02-21 | 2019-10-21 | 神雲科技股份有限公司 | 多硬碟啟動控制方法 |
US20200133683A1 (en) * | 2019-12-28 | 2020-04-30 | Intel Corporation | Technologies for fast booting with error-correcting code memory |
CN113342583A (zh) * | 2021-06-08 | 2021-09-03 | 海光信息技术股份有限公司 | 芯片验证系统、方法、装置、设备和存储介质 |
-
2022
- 2022-08-24 TW TW111131904A patent/TWI831340B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW464566B (en) * | 1999-06-16 | 2001-11-21 | Uddeholm Tooling Ab | Powder metallurgy manufactured high speed steel |
TW200836212A (en) * | 2006-10-20 | 2008-09-01 | Honeywell Int Inc | Faster initialization of DRAM memory |
TWI675368B (zh) * | 2018-02-21 | 2019-10-21 | 神雲科技股份有限公司 | 多硬碟啟動控制方法 |
US20200133683A1 (en) * | 2019-12-28 | 2020-04-30 | Intel Corporation | Technologies for fast booting with error-correcting code memory |
CN113342583A (zh) * | 2021-06-08 | 2021-09-03 | 海光信息技术股份有限公司 | 芯片验证系统、方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202409882A (zh) | 2024-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW494325B (en) | Method and apparatus for SoC design validation | |
US7729877B2 (en) | Method and system for logic verification using mirror interface | |
US10007492B2 (en) | System and method for automatically generating device drivers for run time environments | |
JP2002526908A (ja) | ブロックをベースとする設計方法 | |
US8234624B2 (en) | System and method for developing embedded software in-situ | |
JP2002215712A (ja) | Ic設計の検証方法 | |
US6917998B1 (en) | Reusable complex multi-bus system hardware prototype system | |
GB2380818A (en) | ASIC design technique | |
US20140100841A1 (en) | Testing a Hardware Emulation Model of a Circuit with Software Checker Routines Designed for an RTL Model of the Circuit | |
US7437282B2 (en) | Method and apparatus to provide alternative stimulus to signals internal to a model actively running on a logic simulation hardware emulator | |
Jain et al. | Design and verification of advanced microcontroller bus architecture-advanced peripheral bus (AMBA-APB) protocol | |
US20170185710A1 (en) | Testbench Restoration Based On Capture And Replay | |
TWI831340B (zh) | 快速初始化裝置與方法以及積體電路設計驗證系統 | |
US20030145290A1 (en) | System for controlling external models used for verification of system on a chip (SOC) interfaces | |
Huggi et al. | Design and verification of memory elements using python | |
Nangia et al. | Functional verification of I2C core using SystemVerilog | |
Ke et al. | Verification of AMBA bus model using SystemVerilog | |
EP1650687A1 (en) | Method and apparatus to access modeled memory in a hardware emulator | |
US20040153301A1 (en) | Integrated circuit development methodology | |
CN110991129B (zh) | 一种基于fpga的密码协处理器全自动仿真验证方法 | |
US7231616B1 (en) | Method and apparatus for accelerating test case development | |
CN118428290A (zh) | 一种基于swd数字模型的timer寄存器调试方法 | |
CN118363715A (zh) | 一种参考模型的集成方法、装置、电子设备及存储介质 | |
Kurula | A FRAMEWORK FOR EARLY SYSTEM-ON-CHIP CO-VALIDATION | |
Fujita | Synthesizing, verifying, and debugging SoC with FSM-based specification of on-chip communication protocols |