錯誤響應電路、半導體集成電路以及數據傳輸控制方法
【專利摘要】本發明提供一種錯誤響應電路、半導體集成電路以及數據傳輸控制方法。其中,一種錯誤響應電路包括:分析電路,用于檢測數據是否正被從第一電路傳輸到第二電路,第二電路具有第一功耗狀態和第二功耗狀態,第二功耗狀態的功耗低于第一功耗狀態的功耗;響應電路,用于當第二電路處于第二功耗狀態以及分析電路檢測到數據正被從第一電路傳輸到第二電路時,輸出錯誤信號;以及切換電路,用于根據錯誤信號而選擇錯誤信號和第二電路的輸出信號中的一個,并且將所選擇的信號輸出到第一電路。
【專利說明】錯誤響應電路、半導體集成電路以及數據傳輸控制方法
[0001 ] 本申請是申請號為201310090628.0、提交日期為2013年3月20日、發明名稱為“錯誤響應電路、半導體集成電路以及數據傳輸控制方法”的中國專利申請的分案申請。
技術領域
[0002]本文中所討論的實施例涉及一種錯誤響應電路、半導體集成電路以及數據傳輸控制方法。
【背景技術】
[0003]近年來,尋求電子裝置、半導體集成電路等的功耗的進一步降低。可以采用控制對電路區段(circuit sect1n)的功率供給、停止用于電路的操作時鐘等作為一種用于降低功耗的方法。
[0004]順便提及,例如,當在半導體集成電路中執行數據傳輸時,作為傳輸命令的目標的電路區段將對于傳輸命令的響應返回至作為傳輸命令的源的電路區段。源電路區段在接收到響應之前一直等待。針對這種涉及交握的數據傳輸的標準之一是AMBA(高級微控制器總線架構)。在諸如SoC(片上系統)的半導體集成電路中采用AMBA。
[0005]第2007-172575號日本特開專利公布
[0006]然而,當執行上面的數據傳輸并且作為傳輸命令的目標的電路區段進入低功耗狀態時,存在作為傳輸命令的目標的電路區段不能將響應返回至作為傳輸命令的源的電路區段的情況。例如,如果作為傳輸命令的目標的電路區段在數據傳輸期間進入低功耗狀態,或如果在作為傳輸命令的目標的電路區段處于低功耗狀態時從源電路區段傳送傳輸命令,則存在源電路區段不能接收到響應信號的可能性。在該情況下,數據傳輸不適當地停止并且作為傳輸命令的源的電路區段不能不斷地執行處理。即,作為傳輸命令的源的電路區段可能掛起。
【發明內容】
[0007]根據一個實施例,一種錯誤響應電路包括:分析電路,用于檢測數據是否正被從第一電路傳輸到第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗;響應電路,用于當所述第二電路處于所述第二功耗狀態以及所述分析電路檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,輸出錯誤信號;以及切換電路,用于根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且將所選擇的信號輸出到所述第一電路。
[0008]根據一個實施例,一種半導體集成電路包括:第一電路;第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗;以及錯誤響應電路,用于:檢測數據是否正被從所述第一電路傳輸到所述第二電路,當所述第二電路處于所述第二功耗狀態示以及在檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,生成錯誤信號,以及根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且輸出所選擇的信號。
[0009]根據一個實施例,一種數據傳輸控制方法包括:檢測數據是否正被從第一電路傳輸到第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗;當所述第二電路處于所述第二功耗狀態以及在檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,輸出錯誤信號;以及根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且將所選擇的信號輸出到所述第一電路。
【附圖說明】
[0010]圖1是根據第一實施例的半導體集成電路的示例;
[0011]圖2是根據第二實施例的半導體集成電路的示例;
[0012]圖3是從設備(slave)進入低功耗狀態時的數據傳輸控制方法的示例的流程圖;
[0013]圖4是在AHB應用時錯誤響應電路中的信號的示例;
[0014]圖5是在AHB應用時半導體集成電路的操作的第一示例的時序圖;
[0015]圖6是在AHB應用時半導體集成電路的操作的第二示例的時序圖;
[0016]圖7是在AHB應用時半導體集成電路的操作的第三示例的時序圖;
[0017]圖8是在AHB應用時半導體集成電路的狀態轉變的示例;
[0018]圖9是在APB應用時錯誤響應電路中的信號的示例;
[0019]圖10是在AXI應用時錯誤響應電路中的信號的示例;
[0020]圖11是在AXI應用時、半導體集成電路寫傳輸時的操作的示例的時序圖;
[0021]圖12是在AXI應用時、半導體集成電路讀傳輸時的操作的示例的時序圖;
[0022]圖13是在AXI應用時半導體集成電路的狀態的轉變的示例(部分I);
[0023]圖14是在AXI應用時半導體集成電路的狀態的轉變的示例(部分2);以及
[0024]圖15示出了根據第二實施例的半導體集成電路的修改例。
【具體實施方式】
[0025]現在將參照附圖描述實施例,其中,貫穿附圖中類似的參考標記指代類似的元素。
[0026](第一實施例)
[0027]圖1是根據第一實施例的半導體集成電路的示例。
[0028]半導體集成電路10包括:作為命令(諸如傳輸命令)的源的電路區段11(在下文中稱為主設備)、作為命令的目標并且將針對命令的響應信號返回至主設備11的電路區段12(在下文中稱為從設備)、內部總線13、以及功率控制電路區段14。另外,根據第一實施例的半導體集成電路1包括錯誤響應電路15。在圖1的示例中,錯誤響應電路15布置在內部總線13與從設備12之間。然而,錯誤響應電路15還可以布置在主設備11與內部總線13之間。
[0029]在圖1中,傳送至每個電路區段或從每個電路區段接收的信號的流程由箭頭表示。
[0030]功率控制電路區段14輸出功率控制信號并且對從設備12的功率狀態進行控制。例如,功率控制信號對用于從設備12的電源電壓或用于從設備12的操作時鐘進行控制以控制從設備12的功率狀態。在圖1的示例中,將功率控制信號直接地輸入至從設備12。然而,還可以將功率控制信號輸入至將電源電壓提供至從設備12的電路區段(未示出)或將操作時鐘提供至從設備12的電路區段(未示出)。
[0031]還將功率控制信號輸入至錯誤響應電路15。輸入至錯誤響應電路15的功率控制信號和輸入至從設備12的功率控制信號可以不同。此外,在下面的說明中假定主設備11或錯誤響應電路15不與從設備12同時地進入低功耗狀態。即,假定當從設備12處于低功耗狀態時,主設備11和錯誤響應電路15處于它們執行正常操作的功率狀態中。
[0032]錯誤響應電路15包括分析電路單元15a、響應電路單元15b以及切換電路單元15c。
[0033]分析電路單元15a對從主設備11傳送至從設備12的命令進行分析,并且檢測主設備11與從設備12之間的數據傳輸的狀態。
[0034]當從設備12從其執行正常操作的功耗狀態改變至其消耗較少功率的低功耗狀態(在該狀態中其不輸出響應信號)時,響應電路單元15b根據由分析電路單元15a所檢測到的數據傳輸的狀態生成錯誤信號。
[0035]例如,當切換電路單元15c將在主設備11與從設備12之間的數據傳輸期間從設備12已經進入低功耗狀態通知給響應電路單元15b時,響應電路單元15b生成錯誤信號。另外,當分析電路單元15a檢測到從主設備11到處于低功耗狀態的從設備12的數據傳輸開始時,響應電路單元15b生成錯誤信號。
[0036]切換電路單元15c通過功率控制信號來檢測從設備12是否處于低功耗狀態。如果從設備12處于低功耗狀態,則切換電路單元15c執行切換以將由響應電路單元15b所生成的錯誤信號,而不是將來自從設備12的對于由主設備11所傳送的命令的響應信號,傳送至主設備11。
[0037]現在將描述根據第一實施例的半導體集成電路10的操作的示例。
[0038]如果從功率控制電路區段14所輸出的功率控制信號指示非低功耗狀態,則從從設備12輸出對應于由主設備11所傳送的傳輸命令的響應信號。切換電路單元15c經由內部總線13將響應信號通知給主設備11。
[0039]當功率控制信號在數據傳輸期間指定低功耗狀態時,從設備12不能對來自圖1所示的主設備11的傳輸命令進行響應。當由分析電路單元15a所檢測到的傳輸狀態是“傳輸中”并且來自切換電路單元15c的信號將從設備12被指示為處于低功耗狀態通知給響應電路單元15b時,響應電路單元15b生成錯誤信號。
[0040]當功率控制信號指示低功耗狀態時,切換電路單元15c執行路徑切換以使得將由響應電路單元15b所生成的錯誤信號而不是將來自從設備12響應信號傳送至主設備11。結果,主設備11可以檢測到傳輸失敗,并且執行諸如停止傳輸的處理。
[0041]另一方面,當從設備12處于低功耗狀態并且主設備11將命令傳送至從設備12以實現主設備11開始數據傳輸的效果時,響應電路單元15b生成錯誤信號并且切換電路單元15c將錯誤信號傳送至主設備11。這與上面的情況相同。結果,主設備11可以檢測到傳輸失敗,并且執行諸如停止傳輸的處理。
[0042]如已經描述的,憑借根據第一實施例的半導體集成電路10,即使當從設備12處于低功耗狀態并且因此不能返回響應時,錯誤響應電路15也將錯誤信號傳送至主設備11。這使得可以防止在主設備11與從設備12之間數據傳輸時的掛起。
[0043]在上面的說明中,響應電路單元15b通過來自切換電路單元15c(功率控制信號被輸入至切換電路單元15c)的信號來檢測從設備12被指定為處于低功耗狀態。然而,還可以將上面的功率控制信號輸入至響應電路單元15b。
[0044](第二實施例)
[0045]圖2是根據第二實施例的半導體集成電路的示例。
[0046]半導體集成電路20包括多個主設備21-1、21-2、……、以及21_m,多個從設備22_1、22-2、……、以及21-n、內部總線23、系統模式控制器24以及多個錯誤響應電路25-1、25_2、……、以及25-n。
[0047]在圖2的示例中,錯誤響應電路25-1至25-n布置在從設備22-1至21-n與內部總線23之間。然而,錯誤響應電路25-1至25-n還可以布置在主設備21-1至21-m與內部總線23之間。
[0048]另外,圖2所示的主設備21-1至21-m、從設備22-1至22-n以及錯誤響應電路25-1至25-n的數目是三個或者更多個。然而,對于此數目不存在限制。111或11被設置為大于或等于I的任意值。
[0049]系統模式控制器24具有上面的功率控制電路區段14的功能。即,系統模式控制器24輸出功率控制信號,并且對從設備22-1至22-n中的每個的功率狀態進行控制。系統模式控制器24可以將功率控制信號提供至為從設備22-1至22-n提供電源電壓的電路區段,或將功率控制信號提供至為從設備22-1至21-n提供操作時鐘的電路區段。在該情況下,系統模式控制器24間接地對主設備22-1至21-n中的每個的功率狀態進行控制。
[0050]系統模式控制器24還將功率控制信號提供至錯誤響應電路25-1至25-n。提供至錯誤響應電路25-1至25-n的功率控制信號與提供至從設備22-1至22-n的功率控制信號可以不同。
[0051]在下面的說明中假定,通過功率控制信號,主設備21-1至21-m或錯誤響應電路25-1至25-n分別地不與從設備22-1至21-n同時地進入低功耗狀態。即,輸入至切換電路單元25c的功率控制信號用于確定從設備22-1至21-n中的每個是否處于低功耗狀態。
[0052]錯誤響應電路25-1包括分析電路單元25a、響應電路單元25b以及切換電路單元25c。其它的響應電路25-2至25-n中的每個包括相同的組件(未示出)。
[0053]分析電路單元25a對從主設備21-1至21-m之一傳送至從設備22-1的命令進行分析,并且檢測主設備與從設備22-1之間的數據傳輸的狀態。數據傳輸的狀態取決于數據傳輸標準。AMBA(高級微控制器總線架構)被認為是數據傳輸標準。此外,在AMBA中限定了多個總線標準,諸如AHB(先進高性能總線)、APB(先進附屬總線)以及AXI(先進可擴展接口)。
[0054]分析電路單元25a基于這樣的標準對命令進行分析,并且檢測數據傳輸狀態。另夕卜,分析電路單元25a包括存儲器25d,并且將傳輸命令和關于所檢測到的數據傳輸狀態的信息(在下文中稱為傳輸信息)存儲在存儲器25d中。存儲器25d可以布置在分析電路單元25a外部。
[0055]響應電路單元25b獲取存儲器25d中所存儲的傳輸信息,并且生成對應于數據傳輸狀態的響應信號。此外,當從設備22-1進入低功耗狀態時,響應電路單元25b根據數據傳輸狀態生成錯誤信號。例如,當切換電路單元25c將在主設備與從設備22-1之間的數據傳輸期間從設備22-1已經進入低功耗狀態通知給響應電路單元25b時,響應電路單元25b生成錯誤信號。另外,當分析電路單元25a檢測到從主設備21-1至21-m之一到處于低功耗狀態的從設備22-1的數據傳輸開始時,響應電路單元25b生成錯誤信號。
[0056]切換電路單元25c通過從系統模式控制器24所提供的功率控制信號來檢測從設備22-1是否處于低功耗狀態。如果從設備22-1處于低功耗狀態,則切換電路單元25c將由響應電路單元25所生成的錯誤信號而不是將來自從設備22-1的對于命令的響應信號返回至傳送命令的主設備21-1至21-m之一。
[0057]在上面的示例中,響應電路單元25b通過切換電路單元25c來檢測從設備22-1是否處于低功耗狀態。然而,還可以將功率控制信號輸入至響應電路單元25b。通過這樣做,響應電路單元25b也可以檢測從設備22-1是否處于低功耗狀態。
[0058]現在將描述使用根據第二實施例的半導體集成電路的數據傳輸控制方法的示例。
[0059](數據傳輸控制方法)
[0060]圖3是從設備進入低功耗狀態時數據傳輸控制方法的示例的流程圖。
[0061]例如,當固件發出使從設備進入低功耗狀態的命令時(步驟S10),系統模式控制器24執行控制以使從設備22-1至22-n進入低功耗狀態(步驟Sll )。此時,錯誤響應電路單元25-1至25-n中所包括的切換電路單元25c執行路徑切換以將由響應電路單元25b所生成的信號傳送至主設備21-1至21-m,而不是將來自從設備22-1至22-n的響應傳送至主設備21-1至21-m。可以執行控制以使從設備21-1至22-n單獨地進入低功耗狀態。
[0062]響應電路單元25b然后參考錯誤響應電路25-1至25-n的分析電路單元25a的存儲器25d中所存儲的傳輸信息,并且確定是否正在執行數據傳輸(步驟S12)。如果正在執行數據傳輸,則響應電路單元25b生成并且輸出錯誤信號。例如,如果正在主設備21-1與從設備22-1之間執行數據傳輸,則切換電路單元25c將由響應電路單元25b所生成的錯誤信號傳送至主設備21-1(步驟S13)。
[0063]如果沒有正在執行數據傳輸或在步驟S13執行之后,則執行步驟S14。在步驟S14中,響應電路單元25b基于傳輸信息和來自切換電路單元25c的信號來確定在從設備22-1至22-n處于低功耗狀態時是否從主設備21-1至21-m之一發出了傳輸命令。
[0064]如果發出了傳輸命令,則響應電路單元25b生成并且輸出錯誤信號。例如,如果主設備21-1對處于低功耗狀態的從設備22-1發出傳輸命令,則錯誤響應電路25-1的響應電路單元25b生成錯誤信號。切換電路單元25c然后將由響應電路單元25b所生成的錯誤信號傳送至主設備21-1(步驟S15)。
[0065]如果未發出傳輸命令或在步驟S15執行之后,則執行步驟S16。在步驟S16中,響應電路單元25b基于來自切換電路單元25c的信號來確定從設備22-1至22-n的低功耗狀態是否已經結束(步驟S16)。如果從設備22-1至22-n的低功耗狀態還未結束,則從步驟S14起重復處理。如果從設備22-1至22-n的低功耗狀態已經結束,則錯誤響應電路25-1至25-n的切換電路單元25c執行切換以將響應信號從從設備22-1至22-n傳送至主設備21-1至21-m(步驟S17)。結果,在從設備22-1至22-n轉變至低功耗狀態時和從設備22-1至22-n從低功耗狀態恢復時所執行的數據傳輸控制處理結束。
[0066]現在將進一步詳細地描述,例如,在應用三種總線標準(AHBJI3B以及AXI)中的每種時所執行的半導體集成電路20的操作的示例。
[0067 ](在AHB應用時錯誤響應電路中的信號的示例)
[0068]圖4是在AHB應用時錯誤響應電路中的信號的示例。圖4示出了圖2所示的錯誤響應電路25-1中的信號的示例。在其它錯誤響應電路25-2至25-n中使用相同的信號。
[0069]將來自主設備側的命令(例如,指示要執行哪個傳輸的命令)和來自生成操作時鐘的電路區段(未示出)的時鐘信號HCLK輸入至分析電路單元25a。
[0070]將由分析電路單元25所分析的并且由存儲器25d的所存儲的傳輸信息、來自切換電路單元25c的指示從設備已經進入低功耗狀態的信號SEL以及時鐘信號HCLK輸入至響應電路單元25b。另外,響應電路單元25b輸出信號HREADY、HRESP以及HRDATA。這些信號與從從設備側所輸出的信號HREADY、HRESP以及HRDATA具有相同類型。
[0071]信號HREADY指示是或否延長傳輸。信號HRESP指示傳輸狀態。傳輸狀態為“好(OK)"、“錯誤(ERROR)”、“重試(RETRY)”等。信號HRDATA是在讀取時從從設備側傳送至主設備側的數據。從響應電路單元25b所輸出的信號HRDATA指示數據為任意值的狀態。
[0072]將功率控制信號從系統模式控制器24輸入至切換電路單元25c。將信號HREADY、HRESP以及HRDATA從從設備側和響應電路單元25b輸入至切換電路單元25c。另外,將時鐘信號HCLK輸入至切換電路單元25c。此外,切換電路單元25c根據功率控制信號將從從設備側或響應電路單元25b所輸入的信號HREADY、HRESP以及HRDATA輸出。
[0073 ](在AHB應用時半導體集成電路20的操作的示例)
[0074]現在將以在主設備21-1與從設備22-1之間執行數據傳輸的情況作為示例進行說明。
[0075]圖5是在AHB應用時半導體集成電路的操作的第一示例的時序圖。圖5示出了主設備21-1、從設備22-1以及響應電路單元25b中的每個信號的狀態。
[0076]時鐘信號HCLK和從主設備21-1作為命令或數據而輸出的信號HTRANS、HADDR、HBURST、HWRITE、HSIZE以及HffDATA是主設備21-1中的信號。另外,示出了輸入至主設備21-1的信號HREADY和HRESP。
[0077]信號HTRANS指示傳輸類型。傳輸類型為“無序(NONSEQUENTIAL)”、“有序(SEQUENTIAL)” “空閑(IDLE)”或“繁忙(BUSY)”。信號HADDR指示地址。信號HBURST指示突發傳輸類型。信號HffRITE指示是否執行了寫傳輸。信號HSIZE指示傳輸大小。
[0078]將時鐘信號HCLK、信號HSEL、HTRANS、HADDR、HBURST、服RI TE 以及 HffDATA、功率控制信號等提供至從設備22-1。從從設備22-1輸出信號HREADY、HRESP等。提供至從設備22-1的信號HSEL是從解碼器(未示出)所提供的從設備電路區段信號。
[0079]在下面的示例中,假定當功率控制信號為“I”(信號電平為H(高)電平)時,從設備22-1處于低功耗狀態。另外,假定當功率控制信號為“O”(信號電平為L(低)電平)時,從設備處22-1處于非低功耗狀態。
[0080]將時鐘信號HCLK和信號SEL提供至響應電路單元25b。另外,從響應電路單元25b輸出信號HREADY、HRESP等。提供至響應電路單元25b的信號SEL是切換電路單元25c所提供的,并且指示從設備22-1是否處于低功耗狀態(不被選擇的狀態)。
[0081]在圖5中,在定時tl之前,功率控制信號為“O”并且從設備22-1處于非低功耗狀態。此時在主設備21-1與從設備22-1之間執行寫傳輸。在圖5的示例中,在(:011廿01_4控制下執行傳輸,在Control_A控制下,執行“無序”(縮略為NSEQ)類型和“有序”(縮略為SEQ)類型的4拍突發傳輸。在信號HADDR中指定地址A、A+4、A+8以及A+12。另外,從主設備21-1輸出寫入數據DATA_A作為信號HffDATA。
[0082]當信號HSEL變為“I”時,從設備22-1基于信號HTRANS、HADDR、HBURTS、HWRITE以及HSIZE接收到寫入數據DATA_A。此外,從設備22-1輸出指示傳輸完成的信號HREADY和指示傳輸狀態為“0K”的信號HRESP,傳輸狀態為“0K”意味著正確地執行了傳輸。
[0083]另外,在定時tl之前,響應電路單元25b輸出指示空閑狀態的信號HREADY和HRESP。從響應電路單元25b所輸出的信號HREADY和HRESP與從從設備22-1所輸出的信號HREADY和HRESP具有相同類型。
[0084]當功率控制信號在定時tl變為“I”時,從設備22-1進入低功耗狀態并且不能做出響應。此時,切換電路單元25c切換響應路徑以將從響應電路單元25b所輸出的信號傳送至主設備21-1。此外,切換電路單元25c將信號SEL設置為“I”。當信號SEL改變時,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息(信號HTRANS等的值)確定正在執行傳輸,將信號HREADY設置為“O”以及生成等待。主設備21-1在定時t2檢測到等待。結果,臨時地推遲來自主設備21-1的寫傳輸以執行定時調整。
[0085]另外,在定時t2,響應電路單元25b輸出指示兩個時鐘周期的傳輸狀態“錯誤”的信號HRESP。此外,在定時t3,響應電路單元25b將信號HREADY設置為“I”。結果,主設備21_1檢測到在定時t3和定時t4不可以執行正常的寫傳輸。
[0086]在定時t4,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息確定傳輸被停止,輸出指示傳輸狀態為“0K”的信號HRESP以及保持信號HREADY為“I”。在定時t5,主設備21-1檢測到信號HRESP和HREADY。
[0087]盡管從設備22-1在定時t5處于低功耗狀態,但是主設備21-1仍發出傳輸命令。在圖5的示例中,在Control_B控制下執行“無序”類型的寫傳輸。在信號HADDR中指定地址B。另夕卜,在定時t6,從主設備21-1輸出寫入數據為信號HWDATA。
[0088]在定時t6,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息確定正在執行傳輸,并且再次輸出指示兩個時鐘周期的傳輸狀態“錯誤”的信號HRESP。此外,在定時t7,響應電路單元25b將信號HREDAY設置為“I”。結果,主設備21_1檢測到在定時t7和定時t8不可以執行正常的寫傳輸。
[0089]當功率控制信號在定時t9變為“O”時,從設備22-1從低功耗狀態恢復。當切換電路單元25c確定還未執行傳輸時,切換電路單元25c執行切換以將從從主設備22-1所輸出的信號HREADY和HRESP傳送至主設備21-1。
[0090]現在將描述在AHB應用時半導體集成電路20的操作的第二示例。
[0091]圖6是在AHB應用時半導體集成電路的操作的第二示例的時序圖。圖6是主設備21-1在地址傳送階段(address phase)中發出所有傳輸命令之后、在數據傳送階段(dataphase)中等待響應時從設備22-1進入低功耗狀態的情況下所執行的操作的示例。圖6所示的信號和圖5所示的信號具有相同的類型。
[0092]當由主設備21-1進行的地址A、A+4、A+8以及A+12的指定在定時tlO結束時,功率控制信號變為“I”并且從設備22-1進入低功耗狀態。因此,從設備22-1不能做出響應。此時,切換電路單元25c執行切換以將從響應電路單元25b所輸出入的信號傳送至主設備21-1。另夕卜,切換電路單元25c將信號SEL設置為“I”。響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息來確定正在執行傳送,將信號HREADY設置為“O”以及生成等待。在定時til,主設備21-1檢測到等待。結果,臨時地推遲來自主設備21-1的寫傳輸以執行定時調整。
[0093]另外,在定時til,響應電路單元25b輸出指示兩個時鐘周期的傳輸狀態“錯誤”的信號HRESP。此外,在定時tl2,響應電路單元25b將信號HREADY設置為“I”。結果,主設備21-1檢測到在定時tl2和定時tl3不可以執行正常的寫傳輸。
[0094]在定時tl3,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息來確定傳輸停止,輸出指示傳輸狀態“0K”的信號HRESP以及保持信號HREADY為“I”。在定時tl4,主設備21-1檢測到信號HRESP和HREADY。
[0095]現在將描述在AHB應用時半導體集成電路20的操作的第三示例。
[0096]圖7是在AHB應用時半導體集成電路的操作的第三示例的時序圖。圖7是在從設備處22-1處于低功耗狀態時主設備21-1開始傳輸并且在錯誤響應電路25-1進行的錯誤響應期間釋放從設備22-1的低功耗狀態的情況下所執行的操作的示例。圖7所示的信號與圖5所示的信號具有相同的類型。
[0097]當從設備22-1處于低功耗狀態時,主設備在定時t20發出傳輸命令。在圖7的示例中,在Control_C控制下執行“無序”類型的傳送。在HADDR中指定地址C。另外,在定時t21,從主設備21 -1輸出寫入數據DATA_C作為信號HffDATA。
[0098]在定時t21,響應電路單元25b通過分析電路單元25a的存儲器25d中所存儲的傳輸信息檢測到傳輸開始,并且將信號HREADY設置為“O”。另外,響應電路單元25b輸出指示兩個時鐘周期的傳輸狀態“錯誤”的信號HRESP。此外,在定時t22,響應電路單元25b將信號HREADY設置為“I”。結果,主設備21-1檢測到在定時t22和定時t23不可以執行正常的寫傳輸。
[0099]此外,在圖7的示例中,在定時t22,功率控制信號變為“O”并且釋放從設備22-1的低功耗狀態。然而,響應電路單元25b處于將錯誤響應返回至主設備21-1中,所以切換電路單元25c維持從響應電路單元25b至主設備21-1的信號的傳輸。當切換電路單元25c確認在定時t23錯誤響應結束并且還未執行傳輸時,切換電路單元25c執行切換以將從從設備22-1所輸出的信號HREADY、HRESP等傳送至主設備21-1。標準規定必須對兩個時鐘周期做出錯誤響應。上面的處理使得能夠避免違反標準。
[0100]圖8是在AHB應用時半導體集成電路的狀態轉變的示例。
[0101]如果功率控制信號指定從設備22-1處于非低功耗狀態(例如,如果功率控制信號為“O”),則半導體集成電路20進入狀態Tl,在狀態Tl中,執行路徑切換以創建從從設備22-1至主設備21-1的響應路徑。另一方面,如果功率控制信號指定從設備22-1處于低功耗狀態(例如,如果功率控制信號為“I”),則半導體集成電路20轉變到狀態T3。
[0102]在處于狀態Tl之后,半導體集成電路20進入狀態T2,在狀態T2中,用執行過程中的寫傳輸或讀傳輸命令來更新在存儲器25d中所存儲的之前的傳輸命令。如果功率控制信號指示在半導體集成電路20處于狀態T2時從設備22-1處于非低功耗狀態,則維持狀態T2。另一方面,如果功率控制信號指示在半導體集成電路20處于狀態T2時從設備22-1進入低功耗狀態,則半導體集成電路20轉變到狀態T3。
[0103]當半導體集成電路20處于狀態T3、狀態T4、狀態T5、狀態T6、狀態T7或狀態T8時,從設備22-1處于低功耗狀態。當半導體集成電路20處于狀態T3時,錯誤響應電路25-1的分析電路單元25a對存儲器25d中的更新之后的傳輸命令進行分析并且檢測數據傳輸狀態。如果還未執行傳輸,則半導體集成電路20轉變到狀態T4,在狀態T4中,響應電路單元25b做出“OK”響應(其中響應電路單元25b輸出指示傳輸狀態“OK”的信號HRESP和為“I”的信號HREADY)。另一方面,如果正在執行傳輸,則半導體集成電路20轉變到狀態T5,在狀態T5中,響應電路單元25b生成等待。
[0104]當在狀態T4或T5之后,半導體集成電路20處于所示的狀態T6時,切換電路單元25c執行路徑切換以創建從響應電路單元25b至主設備21-1的響應路徑。狀態T6在與狀態T4或T5出現的定時相同的定時出現。在上面的圖5中,例如,在定時tl,功率控制信號變為“I”,并且切換電路單元25c創建從響應電路單元25b至主設備21-1的響應路徑。在定時tl,信號HREADY變為“O”并且響應電路單元25b生成等待。
[0105]在處于狀態T6之后,半導體集成電路20轉變到狀態T7,在狀態T7中,在還未執行傳輸的情況下響應電路單元25b做出“0K”響應。另一方面,在處于狀態T6之后,半導體集成電路20轉變到狀態T8,在狀態T8中,在執行傳輸的情況下響應電路單元25b做出錯誤響應。
[0106]如果功率控制信號指定在半導體集成電路20處于狀態T7時從設備22-1處于非低功耗狀態,則半導體集成電路20恢復至狀態Tl。此外,如果在半導體集成電路20處于狀態T7時主設備21-1執行至從設備22-1的新的數據傳輸,則半導體集成電路20轉變到狀態T8。
[0107]如果在半導體集成電路20處于狀態T8時主設備21-1停止對從設備21-1的數據傳輸,則半導體集成電路20轉變到狀態T7。此外,如果在半導體集成電路20處于狀態T8時主設備21-1忽略錯誤響應并且繼續數據傳輸,或如果在半導體集成電路20處于狀態T8時主設備21-1停止對從設備22-1的數據傳輸并且執行下一個新的數據傳輸,則維持狀態T8。
[0108]如已經描述的,憑借根據第二實施例的半導體集成電路20,即使在傳輸期間從設備22-1進入低功耗狀態或即使在從設備22-1處于低功耗狀態時執行傳輸,錯誤響應電路25-1也可以將錯誤響應返回至主設備21-1。這使得能夠防止主設備21-1的掛起和整個系統的掛起。
[0109](在APB應用時錯誤響應電路中的信號的示例)
[0110]圖9是在APB應用時錯誤響應電路中的信號的示例。圖9還示出了圖2所示的錯誤響應電路25-1中的信號的示例。在其它錯誤響應電路25-2至25-n中使用相同的信號。
[0111]將來自主設備側的命令(例如,指示要執行哪個傳輸的命令)和來自生成操作時鐘的電路區段(未示出)的時鐘信號PCLK輸入至分析電路單元25a。
[0112]將由分析電路單元25所分析的并且在存儲器25d中所存儲的傳輸信息、來自切換電路單元25的表示從設備已經進入低功耗狀態的信號SEL以及時鐘信號PCLK輸入至響應電路單元25b。另外,響應電路單元25輸出信號PREADY、PSLVERR以及PRDATA。這些信號與從從設備側所輸出的信號PREADY、PSLVERR以及PRDATA具有相同的類型。
[0113]信號PREADY指示是否延長傳輸。信號PSLVERR指示傳輸失敗。信號PRDATA是在讀取時從從設備側傳送至主設備側的數據。從響應電路單元25b所輸出的信號PRDATA指示數據為任意值的狀態。
[0114]將功率控制信號從系統該模式控制器24輸入至切換電路單元25c。將信號PREADY、PSLVERR以及PRDATA從從設備側和響應電路單元25b輸入至切換電路單元25c。另外,將時鐘信號PCLK輸入至切換電路單元25c。此外,切換電路單元25c根據功率控制信號而輸出從從設備側或響應電路單元25b所輸入的信號PREADY、PSLVERR以及PRDATA。
[0115](在APB應用時半導體集成電路20的操作的示例)
[0116]在AI3B應用時半導體集成電路20的操作與在AHB應用時半導體集成電路20的操作幾乎相同。
[0117]圖9所示的信號是在AHB應用時用于半導體集成電路20的操作的。響應電路單元25b通過從切換電路單元25c所輸出的信號SEL檢測到從設備22-1進入低功耗狀態,并且生成對應于傳輸狀態的響應信號。當切換電路單元25c通過功率控制信號檢測到從設備22-1進入低功耗狀態時,切換電路單元25c選擇由響應電路單元25b所生成的信號PREADY、PSLVERR以及PRDATA作為要被傳送至主設備21-1的信號PREADY、PSLVERR以及PRDATA。
[0118]如果在從設備22-1進入低功耗狀態時正在執行主設備21-1與從設備22-1之間的傳輸,則響應電路單元25b將信號PREADY設置為“O”并且生成等待。之后,響應電路單元25b通過信號PSLVERR和PREADY生成錯誤響應。
[0119]如已經描述的,憑借根據第二實施例的半導體集成電路20,即使應用APB也可以獲得與在AHB應用時相同的效果。另外,可以依照APB標準而執行傳輸。
[0120](在AXI應用時錯誤響應電路中的信號的示例)
[0121]圖10是在AXI應用時錯誤響應電路中的信號的示例。圖10還示出圖2所示的錯誤響應電路25-1中的信號的示例。在其它錯誤響應電路25-2至25-n中使用相同的信號。
[0122]將來自主設備側的命令(例如,指示要執行哪個傳輸的命令)和來自生成操作時鐘的電路區段(未示出)的時鐘信號ACLK輸入至分析電路單元25a。
[0123]將由分析電路單元25a所分析的并且在存儲器25d中所存儲的傳輸信息、來自切換電路單元25c的指示從設備進入低功耗狀態的信號SEL以及時鐘信號ACLK輸入至響應電路單元25b。另外,響應電路單元25b輸出寫傳輸時的響應信號、讀傳輸時的響應信號以及信號RDATA。這些信號與從從設備側所輸出的寫傳輸時的響應信號、讀傳輸時的響應信號以及信號RDATA具有相同的類型。
[0124]寫傳輸時的響應信號是AWREADY、WREADY、BRESP、BVALID等。信號AWREADY指示從設備側是否準備好接收寫入地址。信號WREADY指示從設備側是否準備好接收寫入數據。信號BRESP指示寫傳輸時的傳輸狀態。傳輸狀態是例如用于返回從設備錯誤狀態的“SLVERR”。信號BVALID指示是否存在有效的響應。
[0125]讀傳輸時的響應信號是信號ARREADY、RRESP等。信號ARREADY指示從設備側是否準備好接收讀取地址。信號RRESP指示讀傳輸時的傳輸狀態。傳輸狀態是例如由傳輸側所使用的、用于返回錯誤狀態的“SLVERR”。
[0126]信號RDATA是讀傳輸時從從設備側傳送至主設備側的讀取數據。從響應電路單元25b所輸出的信號RDATA指示數據為任意值的狀態。
[0127]將功率控制信號從系統模式控制器24輸入至切換電路單元25c。將寫傳輸時的響應信號、讀傳輸時的響應信號以及信號RDATA從從設備側和響應電路單元25b輸入至切換電路單元25c。另外,將時鐘信號ACLK輸入至切換電路單元25c。此外,切換電路單元25c根據功率控制信號輸出從從設備側或響應電路單元25b所輸入的寫傳輸時的響應信號、讀傳輸時的響應信號、信號RDATA等。
[0128](在AXI應用時半導體集成電路20的操作的示例)
[0129]現在將以執行主設備21-1與從設備22-1之間的數據傳輸(寫傳輸或讀傳輸)的情況作為示例,描述在AXI應用時半導體集成電路20的操作的示例。
[0130]圖11是在AXI應用時半導體集成電路的寫傳輸時的操作的示例的時序圖。圖11示出了主設備21-1、從設備22-1以及響應電路單元25b中的每個信號的狀態。
[0131]在寫傳輸時,將從從設備22-1或錯誤響應電路25-1所傳送的時鐘信號ACLK以及寫傳輸時響應信號(諸如,信號AWREADY、WREADY、BVALID以及BRESP)提供至主設備22-1。另外,示出了從主設備21-1所輸出的信號BREADY。信號BREADY指示主設備21-1是否處于其可以從從設備側接收響應信號的狀態。
[0132]圖11還示出了在主設備21-1側的寫入地址通道、寫入數據通道以及寫入響應通道。將上面的寫傳輸時的響應信號沿寫入響應通道傳送。在圖11中,沿寫入響應通道所傳送的寫傳輸時的響應信號由WR-1、WR-2、WR-3以及WR-4所指示。
[0133]在寫傳輸時,將時鐘信號ACLK、功率控制信號等提供至從設備22-1。將信號AWREADY、WREADY、BVALID以及BRESP從從設備22-1輸出。圖11還示出了在從設備22-1側的寫入地址通道、寫入數據通道以及寫入響應通道中的每個的狀態。
[0134]將時鐘信號ACLK和信號SEL提供至響應電路單元25b。另外,將響應信號(諸如信號AWREADY、WREADY、BVALID以及BRESP)從響應電路單元25b輸出。提供至響應電路單元25b的信號SEL由切換電路單元25c所提供,并且指示從設備22-1是否處于低功耗狀態(不被選擇的狀態)。圖11還示出了寫入響應通道的狀態,沿該寫入響應通道對從響應電路單元25b所輸出的響應信號進行傳輸。
[0135]在圖11中,在定時t30之前,功率控制信號為“O”并且從設備22-1處于非低功耗狀態。此時,執行寫入地址WA-1和WA-2的指定以及主設備21-1與從設備22-1之間寫入數據WD-1的傳輸。當從設備22-1處于非低功耗狀態時,從從設備22-1和響應電路單元25b所輸出的信號BRESP指示傳輸狀態“0K”。
[0136]此外,在圖11的示例中,在定時t30之前,響應電路單元25b輸出與從從設備22-1所輸出的信號相同的信號AWREADY、WREADY以及BRESP。
[0137]在圖11的示例中,當通過沿寫入響應通道所傳輸的響應信號WR-1主設備21-1與從設備22-1之間的交握完成之前、主設備21-1處于等待狀態(信號BREADY為“O”)時,功率控制信號變為“1”(在定時t30)。
[0138]此時,切換電路單元25c執行切換以將從響應電路單元25b所輸出的信號傳輸至主設備21-1。此外,切換電路單元25c將信號SEL設置為“I”。當信號SEL改變時,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息確定正在執行傳輸,將信號AWREADY和WREADY設置為“O”,以及生成等待。另外,主設備21-1在定時t31檢測到響應電路單元25b生成的等待。
[0139]當信號BREADY為“O”并且主設備21_1以及從設備22_1處于等待經由寫入響應通道完成交握的狀態時,禁止從設備側上的信號改變。因此,響應電路單元25b從定時t30起至檢測到為“I”的信號BREADY,生成為“I”的信號BVAILD,維持響應信號WR-1,以及將“0K”響應返回至主設備21-1。之后,在定時t31響應電路單元25b將由信號BRESP所指示的傳輸狀態改變為 “SLVERR” ο
[0140]順便提及,在圖11的示例中,寫入地址WA-2的指定結束。當沿寫入數據通道傳輸寫入數據WD-2在定時t30開始時,從設備22-1進入低功耗狀態。此時,響應電路單元25b還生成等待。然而,在圖11的示例中,響應電路單元25b在與響應電路單元25b生成上面的等待的相同定時t30生成此等待。
[0141]當在等待釋放之后完成沿寫入數據通道的寫入數據WD-2的傳輸時(定時t34),響應電路單元25b生成響應信號WR-2,在檢測到信號BREADY為“I”之前使信號BVALID為“I”,以及做出從設備錯誤響應。
[0142]在定時t35,主設備21-1檢測到從設備錯誤響應。結果,主設備21-1可以檢測到在從設備22-1中發生錯誤,并且檢測到不可以執行寫傳輸。
[0143]此外,在圖11的示例中,當寫入地址WA-3的指定開始時,從設備22-1進入低功耗狀態。此時,響應電路單元25b還生成等待。然而,在圖11的示例中,響應電路單元25b在與響應電路單元25b生成上面的等待的相同定時t30生成此等待。
[0144]在等待釋放之后響應電路單元25b完成沿寫入地址通道的寫入地址WA-3的傳輸(定時t32)。在主設備21-1沿寫入數據通道傳輸寫入數據WD-2之后,響應電路單元25b完成寫入數據WD-3的傳輸(定時t36)。在定時t36,響應電路單元25b生成響應信號WR-3,在檢測到信號BREADY為“I”之前使信號BVALID為“I”,以及做出從設備錯誤響應。
[0145]在定時t37,主設備21-1檢測到從設備錯誤響應。結果,主設備21-1可以檢測到在從設備22-1中發生錯誤。
[0146]此外,在圖11的示例中,在從設備22-1處于低功耗狀態的定時t33,完成沿寫入地址通道的寫入地址WA-4的傳輸。
[0147]在定時t37,功率控制信號變為“O”并且釋放從設備22-1的低功耗狀態。然而,不執行沿寫入地址通道的傳輸。即,當釋放從設備22-1的低功耗狀態時,存在還未執行的寫傳輸。因此,切換電路單元25c維持路徑以使得將在主設備21-1與響應電路單元25b之間執行傳輸和接收。結果,將信號(寫入數據WD-4)沿寫入數據通道傳輸至從設備22-1。
[0148]完成主設備21-1沿寫入數據通道的寫入數據WD-4的傳輸(定時t38)。然而,未將響應信號WR-4傳輸至主設備21-1并且未完成寫傳輸。因此,切換電路單元25c維持路徑以使得將響應信號WR-4從響應電路單元25b傳輸至主設備21-1。
[0149]響應電路單元25b從定時t38起至檢測到信號為“I”的BREADY,使信號BVALID為“I”并且做出從設備錯誤響應。主設備21-1在定時t39檢測到從設備錯誤響應,并且可以識別在從設備22-1中發生了錯誤。另外,在定時t39,響應電路單元25b將由信號BRESP所指示的傳輸狀態設置為“0K”。
[0150]已經完成了所有寫傳輸,所以在定時t40切換電路單元25c執行路徑切換以使得將信號沿寫入地址通道、寫入數據通道以及寫入響應通道從從設備22-1傳送至主設備21-1。現在將描述在AXI應用時半導體集成電路的讀傳輸時的操作的示例。
[0151]圖12是在AXI應用時半導體集成電路的讀傳輸時操作的示例的時序圖。圖12示出了主設備21-1、從設備22-1以及響應電路單元25b中的每個信號的狀態。
[0152]在讀傳輸時,將時鐘信號ACLK和從從設備21-1或錯誤響應電路25-1所傳輸的讀傳輸時的響應信號(諸如信號ARREADY和RRESP)提供至主設備21 -1。
[0153]圖12還示出了在主設備21-1側的讀取地址通道和讀取數據通道的每個的狀態。
[0154]在讀傳輸時,將時鐘信號ACLK、功率控制信號等提供至從設備22-1。從設備22-1輸出信號ARREADY、RRESP等。另外,從設備22-1輸出信號RVALID(未示出)等。圖12還示出了在從設備22-1側的讀取地址通道和讀取數據通道中的每個的狀態。
[0155]將時鐘信號ACLK和信號SEL提供至響應電路單元25b。另外,將信號ARREADY、RRESP等從響應電路單元25b輸出。另外,將信號RVALID(未示出)等從響應電路單元25b輸出。由切換電路單元25c提供被提供至響應電路單元25b的信號SEL,并且指示從設備22-1是否處于低功耗狀態(不被選擇的狀態)。
[0156]在圖12中,在定時t50之前,功率控制信號為“O”并且從設備22-1處于非低功耗狀態。此時,在信號RVALID被從設備22-1設置為“I”并且由信號RRESP所指示的傳輸狀態被從設備22-1設置為“0K”的狀態下,在從設備22-1與主設備22-1之間正在執行讀取地址RA-1的指定和讀取數據RD-1的傳輸。
[0157]在圖12的示例中,在讀取數據RD-1的傳輸期間,功率控制信號變為“I”(定時t50)。結果,從設備22-1進入低功耗狀態并且不能做出響應。
[0158]此時,切換電路單元25c執行路徑切換以將從響應電路單元25b所輸出的信號傳輸至主設備21-1,而不是將從從設備22-1所輸出的信號傳送至主設備21-1。此外,切換電路單元25c將信號SEL設置為H電平。當信號SEL改變時,響應電路單元25b根據分析電路單元25a的存儲器25d中所存儲的傳輸信息(諸如讀取地址RA-1)確定正在執行傳輸,將信號ARREADY設置為“O”以及生成等待。另外,響應電路單元25b將由信號RRESP所指示的傳輸狀態改變為“SLVERR”。此外,響應電路單元25b生成為任意值的讀取數據RD-1。
[0159]在圖12的示例中,從定時t50之前起,從響應電路單元25b所輸出的信號ARREADY為“O”。
[0160]在定時t50之前,將從從設備22-1所輸出的為“I”的信號ARREDAY提供至主設備21-
1。然而,在由切換電路單元25c進行切換之后,將從響應電路單元25b所輸出的為“O”的信號ARREADY提供至主設備21-1。結果,在定時t51主設備21-1檢測到由響應電路單元25b所生成的等待。
[0161]在定時t51,響應電路單元25b將信號ARREADY設置為“I”并且釋放等待。在定時t52,主設備21-1檢測到等待釋放。此外,主設備21-1通過信號RRESP檢測到從設備錯誤響應。結果,主設備21-1可以檢測在從設備22-1中發生了錯誤并且不可以執行讀傳輸。
[0162]順便提及,在圖12的示例中,當讀取地址RA-2的指定開始時,從設備22-1進入低功耗狀態。此時,響應電路單元25b還生成等待。然而,在圖12的示例中,響應電路單元25b在與響應電路單元25b生成上面的等待的相同定時t50生成此等待。
[0163]在等待釋放之后,響應電路單元25b完成沿讀取地址通道的讀取地址RA-2的傳輸(定時t52)。響應電路單元25b生成為任意值的讀取數據RD-2,并且將其沿讀取數據通道傳輸。然而,響應電路單元25b對此傳輸做出從設備錯誤響應。在定時t53,主設備21-1檢測到從設備22-1中的錯誤。
[0164]此外,在圖12的示例中,在從設備22-1處于低功耗狀態的定時t54,完成沿讀取地址通道的讀取地址RA-3的傳輸。
[0165]在定時t55,功率控制信號變為“O”并且釋放從設備22-1的低功耗狀態。然而,存在未完成的讀傳輸,所以切換電路單元25c維持路徑以使得將由響應電路單元25b所生成的并且為任意值的讀取數據RD-3傳輸至主設備21-1。
[0166]此時,響應電路單元25b對于為任意值的讀取數據RD-3的傳輸做出從設備錯誤響應。在定時t56,主設備21-1檢測到從設備22-1中的錯誤。
[0167]另外,在圖12的示例中,在從設備22-1處于低功耗狀態的定時t55,完成沿讀取地址通道的讀取地址RA-4的傳輸。
[0168]因此,在為任意值的讀取數據RD-3沿讀取數據通道的傳輸在定時t56結束之后,切換電路單元25c維持路徑以使得由響應電路單元25b所生成的并且為任意值的讀取數據RD-4將被傳輸至主設備21-1。
[0169]此時,響應電路單元25b對于為任意值的讀取數據RD-4的傳輸做出從設備錯誤響應。在定時t57,主設備21-1檢測到從設備22-1中的錯誤。
[0170]此外,在定時t57,響應電路單元25b將由信號RRESP所指示的狀態改變為“0K”。
[0171]已經完成所有讀傳輸,所以在定時t58,切換電路單元25c執行路徑切換以使得還信號將被沿讀取數據通道從從設備22-1傳送至主設備21-1。
[0172]圖13和圖14是在AXI應用時半導體集成電路的狀態的轉變的示例。
[0173]首先錯誤響應電路25-1準備用于保存傳輸命令的存儲器25d的存儲區域(狀態T10)。根據讀取發出(issuing)容量、讀取ID(辨識符)容量、寫入發出容量以及寫入ID容量來準備存儲區域。
[0174]讀取發出容量是正在執行的并且主設備可以發出的讀取事務處理(readtransact1ns)的最大數目。讀取ID容量是正在執行的并且主設備可以發出的讀取事務處理的不同ARID(經由讀取地址通道的事務處理的ID)的最大數目。
[0175]寫入發出容量是正在執行的并且主設備可以發出的寫入事務處理的最大數目。寫入ID容量是正在執行的并且主設備可以發出的寫入事務處理的不同WRID(經由寫入地址通道的事務處理的ID)的最大數目。
[0176]如果功率控制信號指定在半導體集成電路20處于狀態TlO時從設備22-1處于非低功耗狀態,則半導體集成電路20改變至狀態T11,在狀態T11中,執行路徑切換以創建從從設備22-1至主設備21-1的響應路徑。另一方面,如果功率控制信號指定從設備22-1處于低功耗狀態,則半導體集成電路20改變至狀態T13。
[0177]在處于狀態Tll之后,半導體集成電路20進入狀態T12,在狀態T12中,用執行中的寫入或讀傳輸命令來更新存儲器25d中所存儲的之前的傳輸命令。如果功率控制信號指定在半導體集成電路20處于狀態T12時從設備22-1處于非低功耗狀態,則維持狀態T12。另一方面,如果功率控制信號指定在半導體集成電路20處于狀態T12時從設備22-1處于低功耗狀態,則半導體集成電路20轉變到狀態T13。
[0178]當半導體集成電路20處于狀態T13、狀態T14、狀態T15、狀態T16、狀態T17、狀態T18、狀態T19、狀態T20、狀態T21、狀態T22、狀態T23或狀態T24時,從設備22-1處于低功耗狀態。當半導體集成電路20處于狀態T13時,錯誤響應電路25-1的分析電路單元25a對存儲器25d中的更新之后的傳輸命令進行分析,并且檢測數據傳輸狀態。如果還未執行傳輸并且不存在基于存儲器25d中所存儲的傳輸命令的或還未完成的傳輸,則半導體集成電路20轉變到狀態T14,在狀態T14中,響應電路單元25b做出“0K”響應。
[0179]如圖13所示,在寫傳輸時,響應電路單元25b通過輸出為“I”的信號AWREADY、為“I”的信號WREADY以及指示傳輸狀態“0K”的信號BRESP來做出“0K”響應。此外,如圖14所示,在讀傳輸時,響應電路單元25b通過輸出為T的信號ARREADY和指示傳輸狀態“0K”的信號RRESP來做出“0K”的響應。
[0180]另一方面,如果在半導體集成電路20處于狀態T13時正在執行傳輸,則半導體集成電路20轉變到狀態T15,在狀態T15中,響應電路單元25b生成等待。
[0181]當在狀態T14或T15之后半導體集成電路20處于所示的狀態T16時,切換電路單元25c執行路徑切換以創建從響應電路單元25b至主設備21-1的響應路徑。狀態T16在與狀態T14或T15出現的相同定時出現。
[0182]在處于狀態T16之后,半導體集成電路20轉變到狀態T17,在狀態T17中,在還未執行傳輸并且不存在基于存儲器25d中所存儲的傳輸命令或未完成的傳輸的情況下,響應電路單元25b做出“0K”響應。另一方面,在處于狀態T16之后,半導體集成電路20進入狀態T18,在狀態T18中,在正在執行傳輸的情況下,用執行中的寫或讀傳輸命令來更新存儲器25d中所存儲的之前的傳輸命令。另外,如果主設備21-1在半導體集成電路20處于狀態T17時執行新的傳輸,則半導體集成電路20轉變到狀態T18。如果在半導體集成電路20處于狀態T18時完成存儲器25d中所存儲的所有傳輸命令的執行,則半導體集成電路20轉變到狀態T17。
[0183]如圖14所示,另一方面,如果在半導體集成電路20處于狀態T18時存在還未完成的讀傳輸,則半導體集成電路20進入執行讀傳輸處理的狀態T19、T20以及T21之一。另外,如果在半導體集成電路20處于狀態Τ18時存在還未完成的寫傳輸,則半導體集成電路20進入執行寫傳輸處理的狀態Τ22、Τ23以及Τ24之一。讀傳輸處理和寫傳輸處理被并行地執行。
[0184]如圖14所示,例如,對于讀傳輸處理或寫傳輸處理存在三種優先級(高優先級處理、中優先級處理以及低優先級處理)。
[0185]隨著讀傳輸處理,半導體集成電路20的狀態如下。如果存在用于正在執行沿讀取地址通道的傳輸的命令,則半導體集成電路20轉變到狀態Τ19,在狀態Τ19中,優選地完成沿讀取地址通道的傳輸。如果不存在用于正在執行沿讀取地址通道的傳輸的命令,并且如果存在用于正在執行沿讀取數據通道的傳輸的命令,則半導體集成電路20轉變到狀態Τ20,在狀態Τ20中,其對所有沿讀取數據通道的傳輸做出錯誤響應。如果不存在用于正在執行沿讀取地址通道的傳輸的命令,如果不存在用于正在執行沿讀取數據通道的傳輸的命令,以及如果存在還未完成的讀傳輸命令,則半導體集成電路20轉變到狀態Τ21,在狀態Τ21中,其依照讀傳輸命令做出從設備錯誤響應。
[0186]隨著寫傳輸處理,半導體集成電路20的狀態如下。如果存在用于正在執行沿寫入地址通道的傳輸的命令,則半導體集成電路20轉變到狀態Τ22,在狀態Τ22中優選地完成沿寫入地址通道的傳輸。如果不存在用于正在執行沿寫入地址通道的傳輸的命令,并且如果存在用于正在執行沿寫入數據通道的傳輸的命令,則半導體集成電路20轉變到狀態Τ23,在狀態Τ23中,其完成沿寫入數據通道的傳輸并且對于傳輸做出從設備錯誤響應。如果不存在用于正在執行沿寫入地址通道的傳輸的命令,如果不存在用于正在執行沿寫入數據通道的傳輸的命令,以及如果存在還未完成的寫傳輸命令,則半導體集成電路20轉變到狀態Τ24,在狀態Τ24中,其依照寫傳輸命令完成經由寫入數據通道的傳輸并且做出從設備錯誤響應。
[0187]在處于狀態Τ19、Τ20或Τ21以及Τ22、Τ23或Τ24之后,半導體集成電路20轉變到狀態Τ18。
[0188]執行上面的控制。結果,即使應用AXI,根據第二實施例的半導體集成電路20也可以獲得與在AHB應用時所獲得的相同的效果,并且執行依照AXI標準的傳輸。
[0189]如已經描述的,根據第二實施例的半導體集成電路20包括錯誤響應電路25-1至25-n。然而,根據第二實施例的半導體集成電路20可以依照各種標準而執行傳輸操作,所以不需要改變主設備21-1至21-m以及從設備22-1至22-n。
[0190](修改例)
[0191]在上面的描述中在圖2所示的主設備21-1至21-m與從設備22-1至22-n之間執行數據傳輸。然而,從設備22-1至22-n中的每個可以是下面的電路區段。
[0192]圖15示出了根據第二實施例的半導體集成電路的修改例。用相同的附圖標記對圖15中的與圖2所示的組件相同的組件進行標記。
[0193]圖15所示的半導體集成電路20a包括電路區段30-1至30-n。電路區段30-1至30-n中的每個包括內部總線31和連接至內部總線31的模塊32-1、32-2、……、以及32_x。將功率控制信號從系統模式控制器24提供至電路區段30-1至30-n。在電路區段30-1至30-n中,模塊32-1至32-x的數目可以不同。
[0194]在圖15的示例中,在電路區段30-1至30-n所包括的主設備21-1至21-m與模塊32-1至32-x之間執行數據的傳輸。所包括的錯誤響應電路25-1至25-n分別地對應于電路區段30-1至30-n。錯誤響應電路25-1至25-n執行主設備21-1至21-m與電路區段30-1至30-n之間的數據傳輸的控制,該控制與上面所描述的控制相同。
[0195]例如,當在電路區段30-1所包括的主設備21-1與模塊32-1之間的數據傳輸期間電路區段30-1進入低功耗狀態時,錯誤響應電路25-1(代替不能返回響應的模塊32-1)將錯誤信號傳輸至主設備21-1。另外,當電路區段30-1處于低功耗狀態時電路區段30-1中所包括的主設備21-1與模塊32-1之間的數據傳輸開始時,錯誤響應電路25-1(代替不能返回響應的模塊32-1)將錯誤信號傳輸至主設備21-1。
[0196]根據所公開的錯誤響應電路、半導體集成電路以及數據傳輸控制方法,可以防止掛起。
[0197]根據上述描述可知,本發明的實施例還公開了以下技術方案,包括但不限于:
[0198]方案1.一種錯誤響應電路,包括:
[0199]分析電路單元,用于對從第一電路區段傳送至第二電路區段的命令進行分析,并且檢測所述第一電路區段與所述第二電路區段之間的數據傳輸的狀態;
[0200]響應電路單元,用于依照由所述分析電路單元檢測到的所述數據傳輸的狀態、響應于所述第二電路區段從第一功耗狀態改變至第二功耗狀態來生成錯誤信號,在所述第二功耗狀態中的功耗低于在所述第一功耗狀態中的功耗;以及
[0201]切換電路單元,用于當所述第二電路區段處于所述第二功耗狀態時,將由所述響應電路單元所生成的錯誤信號,而不是將響應信號,傳送至所述第一電路區段,所述響應信號響應于所述命令并且被從所述第二電路區段傳送至所述第一電路區段。
[0202]方案2.根據方案I所述的錯誤響應電路,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,所述響應電路單元生成所述錯誤信號。
[0203]方案3.根據方案I或2所述的錯誤響應電路,其中,當所述第二電路區段處于所述第二功耗狀態并且所述第一電路區段開始數據傳輸時,所述響應電路單元生成所述錯誤信號。
[0204]方案4.根據方案I所述的錯誤響應電路,其中,當所述第二電路區段從所述第二功耗狀態返回至所述第一功耗狀態時,所述切換電路單元依照所述第二電路區段處于所述第二功耗狀態時所述數據傳輸的狀態,將由所述響應電路單元所生成的錯誤信號傳送至所述第一電路區段,并且之后,執行切換以使得由所述第二電路區段所生成的響應信號被傳送至所述第一電路區段。
[0205]方案5.根據方案I所述的錯誤響應電路,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,所述響應電路單元生成用于臨時推遲所述數據傳輸的等待,并且之后,生成所述錯誤信號。
[0206]方案6.—種半導體集成電路,包括:
[0207]第一電路區段,所述第一電路區段為命令源;
[0208]第二電路區段,所述第二電路區段為所述命令的目標,并且所述第二電路區段將響應于所述命令的響應信號返回至所述第一電路區段;以及
[0209]錯誤響應電路,所述錯誤響應電路對所述命令進行分析并且檢測所述第一電路區段與所述第二電路區段之間的數據傳輸的狀態,所述錯誤響應電路依照所述數據傳輸的狀態、響應于所述第二電路區段從第一功耗狀態改變至第二功耗狀態來生成錯誤信號,并且將所述錯誤信號而不是所述響應信號傳送至所述第一電路區段,在所述第二功耗狀態中的功耗小于在所述第一功耗狀態中的功耗。
[0210]方案7.根據方案6所述的半導體集成電路,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,所述錯誤響應電路生成所述錯誤信號。
[0211]方案8.根據方案6或7所述的半導體集成電路,其中,當所述第二電路區段處于所述第二功耗狀態并且所述第一電路區段開始數據傳輸時,所述錯誤響應電路生成所述錯誤信號。
[0212]方案9.根據方案6所述的半導體集成電路,其中,當所述第二電路區段從所述第二功耗狀態返回至所述第一功耗狀態時,所述錯誤響應電路依照所述第二電路區段處于所述第二功耗狀態時所述數據傳輸的狀態將所生成的錯誤信號傳送至所述第一電路區段,并且之后,執行切換以使得由所述第二電路區段所生成的所述響應信號被傳送至所述第一電路區段。
[0213]方案10.根據方案6所述的半導體集成電路,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,所述錯誤響應電路生成用于臨時推遲所述數據傳輸的等待,并且之后,生成所述錯誤信號。
[0214]方案11.一種數據傳輸控制方法,其包括:
[0215]對從第一電路區段傳送至第二電路區段的命令進行分析,并且檢測所述第一電路區段與所述第二電路區段之間的數據傳輸的狀態;
[0216]依照所檢測到的所述數據傳輸的狀態、響應于所述第二電路區段從第一功耗狀態改變至第二功耗狀態來生成錯誤信號,在所述第二功耗狀態中的功耗低于在所述第一功耗狀態中的功耗;以及
[0217]將所述錯誤信號而不是響應信號傳送至所述第一電路區段,所述響應信號響應于所述命令并且被從所述第二電路區段傳送至所述第一電路區段。
[0218]方案12.根據方案11所述的數據傳輸控制方法,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,生成所述錯誤信號。
[0219]方案13.根據方案11或12所述的數據傳輸控制方法,其中,當所述第二電路區段處于所述第二功耗狀態并且所述第一電路區段開始數據傳輸時,生成所述錯誤信號。
[0220]方案14.根據方案11所述的數據傳輸控制方法,進一步包括,當所述第二電路區段從所述第二功耗狀態返回至所述第一功耗狀態時,依照在所述第二電路區段處于所述第二功耗狀態時所述數據傳輸的狀態,將所述所生成的錯誤信號傳送至所述第一電路區段,并且之后,執行切換以使得將由所述第二電路區段所生成的所述響應信號傳送至所述第一電路區段。
[0221]方案15.根據方案11所述的數據傳輸控制方法,其中,當在所述第一電路區段與所述第二電路區段之間的數據傳輸期間所述第二電路區段改變至所述第二功耗狀態時,生成用于臨時地推遲所述數據傳輸的等待,并且之后,生成所述錯誤信號。
【主權項】
1.一種錯誤響應電路,包括: 分析電路,用于檢測數據是否正被從第一電路傳輸到第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗; 響應電路,用于當所述第二電路處于所述第二功耗狀態以及所述分析電路檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,輸出錯誤信號;以及 切換電路,用于根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且將所選擇的信號輸出到所述第一電路。2.根據權利要求1所述的錯誤響應電路,其中,當所述第二電路處于所述第二功耗狀態時,所述響應電路響應于從所述第一電路開始傳輸所述數據而輸出所述錯誤信號。3.根據權利要求1所述的錯誤響應電路,其中,當所述切換電路將所述錯誤信號輸出到所述第一電路的同時、所述第二電路從所述第二功耗狀態轉移到所述第一功耗狀態時,所述切換電路保持將所述錯誤信號輸出到所述第一電路。4.根據權利要求1所述的錯誤響應電路,其中,當所述分析電路檢測到所述數據正被傳輸時,所述響應電路響應于所述第二電路從所述第一功耗狀態轉移到所述第二功耗狀態而臨時推遲所述數據的傳輸,并且之后,輸出所述錯誤信號。5.—種半導體集成電路,包括: 第一電路; 第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗;以及錯誤響應電路,用于: 檢測數據是否正被從所述第一電路傳輸到所述第二電路, 當所述第二電路處于所述第二功耗狀態示以及在檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,生成錯誤信號,以及 根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且輸出所選擇的信號。6.根據權利要求5所述的半導體集成電路,其中,當所述第二電路處于所述第二功耗狀態時,所述錯誤響應電路響應于從所述第一電路開始傳輸所述數據而輸出所述錯誤信號。7.根據權利要求5所述的半導體集成電路,其中,當所述錯誤響應電路將所述錯誤信號輸出到所述第一電路的同時、所述第二電路從所述第二功耗狀態轉移到所述第一功耗狀態時,所述錯誤響應電路保持將所述錯誤信號輸出到所述第一電路。8.根據權利要求5所述的半導體集成電路,其中,在檢測到所述數據正被傳輸時,所述錯誤響應電路響應于所述第二電路從所述第一功耗狀態轉移到所述第二功耗狀態而臨時推遲所述數據的傳輸,并且之后,輸出所述錯誤信號。9.一種數據傳輸控制方法,其包括: 檢測數據是否正被從第一電路傳輸到第二電路,所述第二電路具有第一功耗狀態和第二功耗狀態,所述第二功耗狀態的功耗低于所述第一功耗狀態的功耗; 當所述第二電路處于所述第二功耗狀態以及在檢測到所述數據正被從所述第一電路傳輸到所述第二電路時,輸出錯誤信號;以及 根據所述錯誤信號而選擇所述錯誤信號和所述第二電路的輸出信號中的一個,并且將所選擇的信號輸出到所述第一電路。10.根據權利要求9所述的數據傳輸控制方法,還包括:當所述第二電路處于所述第二功耗狀態時,響應于從所述第一電路開始傳輸所述數據而輸出所述錯誤信號。11.根據權利要求9所述的數據傳輸控制方法,還包括:當所述錯誤信號被輸出到所述第一電路的同時、所述第二電路從所述第二功耗狀態轉移到所述第一功耗狀態時,保持將所述錯誤信號輸出到所述第一電路。12.根據權利要求9所述的數據傳輸控制方法,還包括:在檢測到所述數據正被傳輸時,響應于所述第二電路從所述第一功耗狀態轉移到所述第二功耗狀態而臨時推遲所述數據的傳輸,并且之后,輸出所述錯誤信號。
【文檔編號】G06F11/07GK105930222SQ201610232528
【公開日】2016年9月7日
【申請日】2013年3月20日
【發明人】齋藤奈津美, 仁茂田永, 仁茂田永一
【申請人】株式會社索思未來