兼顧低延時和高吞吐量的數據通信的電動機控制裝置的製作方法
2023-05-30 05:25:31 2

本發明涉及一種兼顧要求低延時的數據通信和要求高吞吐量的數據通信的電動機控制裝置。
背景技術:
近年來,在電動機控制裝置等電子裝置中,為了實現部件數量的削減和佔有面積的降低,利用了將各種電路模塊(功能塊)集成化而得的ASIC(Application Specific Integrated Circuit:專用集成電路)。
例如將控制工具機、機器人等中的電動機的電動機控制裝置、例如主CPU(中央處理器)與集成化了各自發揮不同功能的多個電路模塊的ASIC通過總線而連接,在主CPU和ASIC之間進行各種信號(命令信號、數據信號等)的收發。
在此,在主CPU和ASIC之間的通信(信號的收發)中,因ASIC中所包含的各電路模塊的特性等導致例如混合有要求低延時(短的延遲時間)的數據通信和要求高吞吐量(每單位時間的大的傳輸量)的數據通信。
因此,例如為了提高控制工具機、機器人等中的電動機的電動機控制裝置的性能,需要兼顧上述不同數據通信地進行處理。
以往,例如作為改善主CPU(第1電路裝置)與ASIC(第2電路裝置)之間的通信的方案,進行了各種提案。例如,在日本專利第4558519號公報中,作為PCI Express(註冊商標)(PCI Express(註冊商標):以下也稱為PCI-EX)中的設備的連接方式,提出了在控制器和PCI-EX設備之間通過多個通道(lane)進行連接,來提高傳輸速度的方案。
此外,在日本特開2013-054730號公報中提出了如下的方案:作為具有多核處理器的數值控制系統,例如應用PCI Express(註冊商標)、HyperTransport(註冊商標)以及RapidIO(註冊商標)這樣的高速串行通信的接口,與應用並行通信的接口時相比,削減了信號引腳數,降低了成本和實際面積。
並且,在日本特開2008-204245號公報中提出了如下的方案:對於必須以短周期傳輸一定量的數據而結束的這樣的、同步轉發的制約較強的用途,為了低成本且少重傳(resending overheads)地高效地處理錯誤發生時的處理,應用PCI-EX(PCI Express(註冊商標))的虛擬模式。
如上所述,例如,由於各自發揮不同功能的多個電路模塊被集成到ASIC中,因此在主CPU與ASIC之間的通信中混合有要求低延時的數據通信和要求高吞吐量的數據通信。
然而,在現有的電動機控制裝置中存在如下的應解決的課題:例如,由於經由1個通信路徑(總線)進行電路裝置之間的數據通信,因此要求低延時的數據通信等待,或者,要求高吞吐量的數據通信的傳輸速度下降。
此外,例如專利文獻1所公開的方法是通過多個通道進行電路裝置之間的數據通信來提高傳輸速度的方法,並且,專利文獻2所公開的方法是通過應用串行通信的接口來降低成本和實裝面積的方法,而不是經由不同特性的通信路徑來進行不同的數據通信。
並且,專利文獻3所公開的方法是,針對同步轉發的制約強的用途也應用PCI-EX的虛擬模式,低成本且少重傳地高效地進行錯誤發生時的處理的方法,仍然不是經由不同特性的通信路徑來進行不同的數據通信。
鑑於上述現有技術的問題,本發明的目的是提供一種電動機控制裝置,其能夠在不同的電路裝置之間,對應於各自的特性地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。
技術實現要素:
根據本發明的第1實施方式,提供一種電動機控制裝置,其包括第1電路裝置和第2電路裝置,經由具有不同通信特性的至少2個通信路徑進行上述第1電路裝置和上述第2電路裝置之間的數據通信,其中,上述第1電路裝置和上述第2電路裝置之間的數據通信包括:要求低延時的第1數據通信和要求高吞吐量的第2數據通信,經由具有低延時特性的第1通信路徑來進行上述第1電路裝置和上述第2電路裝置之間的上述第1數據通信,經由具有高吞吐量特性的第2通信路徑來進行上述第1電路裝置和上述第2電路裝置之間的上述第2數據通信。
上述第1通信路徑是調整第1緩衝區大小(Buffer Size)、第1有效載荷大小、以及第1通道數而具有低延時特性的第1串行總線,上述第2通信路徑是調整第2緩衝區大小、第2有效載荷大小、以及第2通道數而具有高吞吐量特性的第2串行總線,設定為上述第1緩衝區大小小於上述第2緩衝區大小,或者,上述第2有效載荷大小大於上述第1有效載荷大小,或者,上述第2通道數多於上述第1通道數,由此得以實現。上述第1串行總線和上述第2串行總線優選為PCI Express(註冊商標)。
此外,也可以是,上述第1通信路徑為並行總線,上述第2通信路徑為高速串行總線,可以設上述並行總線是PCI總線、IFC總線、ATA總線、60x總線以及啟動接口(ブートインターフェース)中的某一個,並設上述高速串行總線是PCI Express(註冊商標)、HyperTransport(註冊商標)以及RapidIO(註冊商標)中的某一個。
根據本發明的第2實施方式,提供一種電動機控制裝置,其包括第1電路裝置和第2電路裝置,經由通信路徑進行上述第1電路裝置和上述第2電路裝置之間的數據通信,上述通信路徑包括高速串行總線中的至少2個虛擬模式的信道,在上述至少2個虛擬模式的信道中,使第1數據的第1優先級高於第2數據的第2優先級來進行數據通信,其中,第2數據的大小大於上述第1數據的大小。
在第2實施方式的電動機控制裝置中,優選上述高速串行總線為PCI Express(註冊商標),上述第1數據為要求低延時的數據,上述第2數據為要求高吞吐量的數據。
根據第2實施方式的電動機控制裝置,與第1實施方式的電動機控制裝置同樣地,能夠在不同的電路裝置之間,與各自的特性相對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。並且,根據第2實施方式的電動機控制裝置,不會使小的數據因大的數據而等待,由此能夠高效地轉發數據。這會使要求低延時的、大小較小的數據以短的延遲進行數據通信。
通過上述第1數據通信而傳輸的第1數據包括:寄存器和外圍部中的某個設備所關聯的數據,通過上述第2數據通信而傳輸的第2數據包括:伺服、主軸、I/O以及圖形中的某個所關聯的數據。上述第1電路裝置為第1半導體集成電路,上述第2電路裝置為設置有多個半導體集成電路的印刷基板。
或者,上述第1電路裝置為第1半導體集成電路,上述第2電路裝置為設置有多個電路宏的第2半導體集成電路。在此,上述第2半導體集成電路為上述電動機控制裝置的專用集成電路,上述專用集成電路包括:伺服控制部、圖形引擎和I/O通信主站中的某個、以及處理要求低延時的數據的外圍部,其中,伺服控制部對處理要求高吞吐量的數據的伺服電動機或主軸電動機進行控制,圖形引擎處理圖像,I/O通信主站控制I/O通信。此外,上述第1半導體集成電路為上述電動機控制裝置的主CPU。
附圖說明
通過參照以下的附圖,更明確地理解本發明。
圖1是概要性地表示本發明的電動機控制裝置的各實施例的框圖。
圖2是表示圖1所示的電動機控制裝置的變形例的框圖。
圖3是表示本發明的電動機控制裝置的第1實施例的主要部分的框圖。
圖4是用於說明圖3所示的第1實施例的電動機控制裝置的結構以及設定例的圖(之一)。
圖5是用於說明圖3所示的第1實施例的電動機控制裝置的結構以及設定例的圖(之二)。
圖6是表示本發明的電動機控制裝置的第2實施例的主要部分的框圖。
圖7是表示本發明的電動機控制裝置的第3實施例的主要部分的框圖。
圖8是用於說明電動機控制裝置的一例的圖。
具體實施方式
首先,在詳述本發明的電動機控制裝置的實施例前,參照圖8,對電動機控制裝置的一例及其問題點進行說明。圖8是用於說明電動機控制裝置的一例的圖,圖8中的(a)是表示電動機控制裝置的一例的結構的框圖,圖8中的(b)是表示圖8中的(a)所示的電動機控制裝置中的數據種類的圖。
如圖8中的(a)所示,電動機控制裝置包括:CPU(主CPU、第1電路裝置)1、對置裝置(ASIC、第2電路裝置)2、以及DSP(Digital Signal Processor,數位訊號處理器)31。並且,電動機控制裝置還可以包括:存儲裝置32和SRAM(Static Random Access Memory,靜態隨機存取存儲器)33。另外,SRAM 33通過電池而備用,但也可以應用閃速存儲器等其他非易失性存儲器。
ASIC 2包括:連接CPU 1的接口(I/F)20、連接選擇板(未圖示)的I/F 21、DMA(Direct Memory Access,直接內存存取)22、以及伺服控制部23。此外,ASIC 2還包括:連接DSP 31的I/F 24、連接各種周邊設備的外圍部25、圖形引擎26、以及I/O通信主站(master)27。
I/O通信主站27是用於控制I/O通信的電路,例如,將在用於存儲I/O圖像的RAM(隨機存取存儲器:用於I/O的RAM)28中存儲的輸出數據(DO),通過I/O通信發送到從動單元(未圖示)而輸出。另外,在圖8中的(a)中,I/O通信主站27控制I/O通信,但也可以進行各種變形。
此外,例如將輸入到從動單元的數據通過I/O通信作為輸入數據(DI)存儲在RAM 28中。在此,例如通過在CPU 1上執行的順序程序來讀/寫RAM 28上的DI/DO。另外,CPU1也可以構成為多核CPU。
圖形引擎26是用於對高級圖形功能的一部分進行輔助的處理器,例如,包括:存儲畫面的圖像數據的VRAM(視頻RAM(Video RAM);視頻存儲器),以及MPU(微處理單元、微處理器),其將存儲於VRAM中的數據輸出到顯示器(例如,LCD(液晶顯示器)等。
外圍部25例如與存儲裝置32、SRAM 33、鍵盤、A.SP/HDI、RTC這樣的各種周邊設備連接,其中,存儲裝置32包含:存儲有電動機控制裝置的軟體的e MMC(註冊商標)(embedded Multi Media Card,嵌入式多媒體卡)、SD卡、e SSD(embedded Solid State Device,嵌入式固態器件)等。
其中,A.SP表示模擬輸出(模擬主軸輸出),HDI表示輸入用於使執行中的加工程序跳步(跳躍,skip)的信號的跳步信號輸入I/F。另外,HDI可以作為觸摸傳感器的信號的輸入I/F而使用,也可以作為傳感器用輸入數據(DI)接口而發揮作用。此外,RTC表示由晶體振蕩器及其計數器電路構成的實時數字時鐘,通過電池或電容器而動作。
I/F 24是連接DSP 31的接口,在與伺服控制部(主軸/伺服控制部)23之間進行信號的收發。伺服控制部23進行例如用於進行如下動作的控制:向內置的RAM區域寫入來自CPU 1的移動指令值,DSP 31讀取該移動指令值,使電動機移動到指令值的位置。這裡,DSP 31例如構成為多核DSP。此外,通過與伺服控制部23連接的伺服I/F進行電動機的控制。
伺服I/F是用於連接伺服放大器、主軸放大器的接口,這些放大器例如與向使工具機的各軸動作的伺服電動機、主軸電動機的動力線,以及檢測各電動機的位置和速度的反饋信號的輸入線連接。
即,從伺服控制部23通過伺服I/F對放大器發送電流的指令值。放大器根據該接收到的電流指令值進行基於PWM(Pulse Width Modulation,脈衝寬度調製)信號的電流控制,將內置於放大器中的電流傳感器的值通過伺服I/F發送給伺服控制部23。並且,還將來自電動機的反饋信號通過伺服I/F發送給伺服控制部23。
DSP 31根據接受的電流傳感器的值、反饋信號的值,將下一個電流控制指令值通過伺服I/F發送給放大器。此外,DSP 31通過重複進行該電流控制來控制電動機,並按照從CPU1指示的移動指令值使各軸到達。並且,DSP 31將反饋信號的值寫入到伺服控制部23中,CPU 1讀出該寫入的值來確認軸到達了移動指令值這一情況。
在此,DSP 31例如可以內置於構成為多核的CPU 1中,在該情況下,移動指令值不是經由伺服控制部、而是經由與CPU 1連接的DRAM或CPU內部的高速緩衝存儲器,在多核的DSP 31(用於DSP 31的核)和CPU 1(用於CPU 1的核)之間進行數據交換。
DMA 22例如不是基於CPU 1的轉發控制、而是經由內部總線29,對已存儲或要存儲於RAM 28和圖形引擎26的VRAM等中的數據進行直接轉發控制。此外,DMA 22例如也對與經由I/F 21而連接的選擇板之間的要求高吞吐量的數據進行直接轉發控制。I/F 20包括仲裁器(arbiter)(總線仲裁器)201,對ASIC 2與CPU 1之間的數據通信(信號的收發)進行調停來進行控制。
在圖8中的(a)中,CPU 1和ASIC 2通過通信路徑CP 0連接,進行各種數據的收發。即,經由I/F 20進行的CPU 1與ASIC 2之間的數據通信包括:例如使執行中的加工程序跳步的跳步信號、用於傳感器的輸入數據,或者,實時數字時鐘的信號、從存儲裝置32輸入的來自外圍部25的要求低延時的數據D1,以及例如通過DMA 22控制的RAM 28或圖形引擎26的VRAM等的要求高吞吐量的數據D2。另外,要求低延時的數據D1例如還包括:在ASIC 2所包含的各種電路模塊中進行各種設定的寄存器的數據。
即,作為通信路徑CP 0,例如即使應用PCI-EX等高速串行總線,經由該通信路徑CP 0在CPU 1和ASIC 2之間被收發的數據中也混合有要求低延時的數據D1以及要求高吞吐量的數據D2。
如圖8中的(b)所示,要求低延時(例如,~字節每微秒:B/u(μ)sec)的數據(第1數據)D1是與寄存器、外圍部25相關聯的小容量的數據,此外,要求高吞吐量(例如,~千字節每毫秒:kB/msec)的數據(第2數據)D2是與伺服、主軸、I/O或圖形相關聯的大容量的數據。
如上所述,通信路徑CP 0例如可以應用高速串行總線,但在該情況下,經由相同的通信路徑,在CPU 1與ASIC 2之間通信要求低延時的數據D1和要求高吞吐量的數據D2。即,在圖8中的(a)所示的電動機控制裝置中,CPU 1與ASIC 2之間的數據通信經由相同的通信路徑(總線)而進行,因此可能發生要求低延時的數據通信進行等待,或者,要求高吞吐量的數據通信的傳輸速度下降的不良情況。
以下,參照附圖詳細說明本發明的電動機控制裝置的實施例。圖1是概要性地表示本發明的電動機控制裝置的各實施例的框圖,分別地,圖1中的(a)概要性地表示各實施例的基本結構,圖1中的(b)概要性地表示第1實施例,圖1中的(c)概要性地表示第2實施例,圖1中的(d)概要性地表示第3實施例。
如圖1中的(a)所示,本實施例的電動機控制裝置包括CPU(主CPU,第1電路裝置)1和ASIC(對置裝置,第2電路裝置)2,經由具有不同的通信特性的第1通信路徑CP 1和第2通信路徑CP 2進行CPU 1與ASIC 2之間的數據通信(信號的收發)。
即,在CPU 1和ASIC 2之間,經由具有低延時特性的第1通信路徑CP 1進行收發要求低延時的第1數據D1的第1通信,經由具有高吞吐量特性的第2通信路徑CP 2進行收發要求高吞吐量的第2數據D2的第2通信。
如圖1中的(b)所示,第1實施例的電動機控制裝置是如下的裝置:在CPU 1和ASIC 2之間,通過高速串行總線(例如,PCI-EX)構成收發第1數據D1的第1通信路徑CP 11和收發第2數據D2的第2通信路徑CP 12,調整各自的各種參數來將第1通信路徑CP 11設定成適合於低延時的數據通信的特性,並將第2通信路徑CP 12設定成適合於高吞吐量的數據通信的特性。另外,在後面參照圖3~圖5詳細說明第1實施例的電動機控制裝置的細節。
如圖1中的(c)所示,第2實施例的電動機控制裝置是如下的裝置:在CPU 1和ASIC 2之間,通過並行總線構成收發第1數據D1的第1通信路徑CP21,並通過高速串行總線構成收發第2數據D2的第2通信路徑CP 12。另外,在後面參照圖6詳細說明第2實施例的電動機控制裝置的細節。
如圖1中的(d)所示,第3實施例的電動機控制裝置是如下的裝置:經由通信路徑CP 3進行CPU 1和ASIC 2之間的數據通信,通信路徑CP 3包括高速串行總線(例如,PCI-EX)中的至少2個虛擬模式的信道CP 31、CP 32。並且,在至少2個虛擬模式的信道CP 31、CP 32中,設為第1數據D1的第1優先級高於第2數據D2的第2優先級來進行通信,其中,第2數據D2的大小大於第1數據D1的大小。另外,在後面參照圖7詳細說明第3實施例的電動機控制裝置的細節。
這樣,根據本實施例的電動機控制裝置,能夠在不同的電路裝置之間,與各自的特性對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。
在以上,ASIC 2例如可以應用除了I/F 20以外的與參照圖8說明的結構一樣的結構。在此,第1電路裝置1並不限定於電動機控制裝置的主CPU,此外,第2電路裝置2並不限定於電動機控制裝置的ASIC(專用集成電路),也可以是其他各種半導體集成電路。並且,第1電路裝置1與第2電路裝置2之間的信號的收發並不限定於低延時和高吞吐量,此外,第1電路裝置1與第2電路裝置2之間的通信路徑也可以有3個以上。
圖2是表示圖1所示的電動機控制裝置的變形例的框圖。從圖2與上述的圖1中的(a)的比較可知,上述各實施例中的第2電路裝置並不限定於設置有多個電路模塊的ASIC(半導體集成電路)2,例如也可以是設置有相當於參照圖8中的(a)說明的各電路模塊的多個半導體集成電路的印刷基板2』。
並且,如上所述,各實施例中的第1電路裝置並不限定於電動機控制裝置的主CPU 1,也可以是其他各種半導體集成電路1。另外,在本變形例中,半導體集成電路1與印刷基板2』之間的第1通信路徑CP1和第2通信路徑CP 2,也可以直接應用參照圖1中的(b)~圖1中的(d)說明了概要的第1實施例~第3實施例的第1通信路徑CP 11、CP 21、CP 31以及第2通信路徑CP 12、CP 22、CP 32。
圖3是表示本發明的電動機控制裝置的第1實施例的主要部分的框圖,示出了與CPU 1連接的ASIC 2中的接口(I/F)20a、以及第1通信路徑CP 11和第2通信路徑CP 12。另外,ASIC 2的結構相當於參照圖8說明的結構,圖8中的I/F 20相當於圖3所示的I/F 20a。
如之前參照圖1中的(b)說明了概要的那樣,在第1實施例的電動機控制裝置中,在CPU 1和ASIC 2之間,通過高速串行總線(PCI-EX)構成了收發要求低延時的第1數據D1的第1通信路徑CP 11和收發要求高吞吐量的第2數據D2的第2通信路徑CP 12這兩者。
如圖3所示,ASIC 2的I/F 20a包括:第1通信路徑緩衝部211,其包括用於第1通信路徑(第1PCI-EX)CP 11的發送緩衝區(TX緩衝區)和接收緩衝區(RX緩衝區);第2通信路徑緩衝部212,其包括用於第2通信路徑(第2PCI-EX)CP 12的發送緩衝區和接收緩衝區;以及總線橋213。其中,總線橋213是用於經由緩衝部211和212而連接第1、第2通信路徑CP 11、CP 12與ASIC 2的內部總線29的電路。
圖4和圖5是用於說明圖3所示的第1實施例的電動機控制裝置的結構以及設定例的圖。在此,圖4表示按數據包(packet)種類的緩衝區大小(buffer size)的結構例,圖5中的(a)表示按發送/收發的緩衝區大小的結構例,圖5中的(b)表示通道數的結構例,圖5中的(c)表示有效載荷大小的設定例。
在圖4和圖5中的(a)~圖5中的(c)中,「高吞吐量」表示要求高吞吐量的數據D2,「低延時」表示要求低延時的數據D1。此外,「高吞吐量」的「TX緩衝區」和「RX緩衝區」對應於圖3所示的第2通信路徑緩衝部212中的發送緩衝區和接收緩衝區,「低延時」的「TX緩衝區」和「RX緩衝區」對應於圖3所示的第1通信路徑緩衝部211中的發送緩衝區和接收緩衝區。
首先,如圖5中的(a)所示,關於緩衝區的大小,例如針對要求高吞吐量的數據D2(高吞吐量),將發送緩衝區(TX緩衝區)的大小設為256[比特],將接收緩衝區(RX緩衝區)的大小設為4096[比特]。此外,針對要求低延時的數據D1(低延時),將發送緩衝區(TX緩衝區)的大小設為64[比特],將接收緩衝區(RX緩衝區)的大小設為256[比特]。
並且,如圖4所示,針對要求高吞吐量的數據D2(高吞吐量),在發送緩衝區(TX緩衝區)和接收緩衝區(RX緩衝區)的數據包中,將發布的請求(Posted Request)、未發布的請求(NON Posted Request)以及插補請求(Completion Request)的各頭(Headers)設為256[比特],並將各數據(data)設為4096[比特]。
另一方面,針對要求低延時的數據D1(低延時),在發送緩衝區(TX緩衝區)和接收緩衝區(RX緩衝區)的數據包中,將發布的請求(Posted Request)、未發布的請求(Non Posted Request)以及插補請求(Completion Request)的各頭(Headers)設為64[比特],並將各數據(data)設為256[比特]。
然而,在PCI-EX中,例如進行相互連絡(連接)接收緩衝區的容量來通信的流程控制(Flow Control)。通常,該流程控制通過硬體自動地進行,因此難以通過軟體來控制。
因此,例如若緩衝區大小較大則不等待而一個接一個地進行信號的收發(數據通信),因此吞吐量變大(變高),但在滯留在緩衝區中的數據較多的情況下,例如從CPU1發送各個數據開始到ASIC(對置裝置)2接收為止的等待時間變長,即延時變長(變高)。
因此,可知,優選將進行要求高吞吐量的數據D2的收發的第2通信路徑CP 12側的緩衝區大小設定得大,將進行要求低延時的數據D1的收發的第1通信路徑CP 11側的緩衝區大小設定得小。
即,通過將用於第1通信路徑(第1PCI-EX)CP 11的緩衝區大小設定得小,將用於第2通信路徑(第2PCI-EX)CP 12的緩衝區大小設定得大,例如即使兩者都是相同的PCI-EX,也可以使第1通信路徑CP 11適合於要求低延時的數據D1,使第2通信路徑CP 12適合於要求高吞吐量的數據D2。
此外,如圖5中的(b)所示,關於通道數的結構,例如針對要求高吞吐量的數據D2(高吞吐量),將通道數設定得大(例如,4),針對要求低延時的數據D1(低延時),將通道數設定得小(例如,1)。
即,關於基於通道數的速度差,例如數據包大小越大則影響越大,因此在合計的通道數受限制的情況下,將收發要求高吞吐量的數據D2的第2通信路徑CP 12的通道數設定得大,將收發要求低延時的數據D1的第1通信路徑CP 11的通道數設定得小。由此,可以使第1通信路徑CP 11適合於要求低延時的數據D1,使第2通信路徑CP 12適合於要求高吞吐量的數據D2。
並且,如圖5中的(c)所示,關於有效載荷大小(最大有效載荷大小),例如針對要求高吞吐量的數據D2(高吞吐量),將有效載荷大小設定得大(例如,4096[比特]),針對要求低延時的數據D1(低延時),將有效載荷大小設定得小(例如,128[比特])。
即,例如在PCI-EX的標準中,可以通過配置寄存器來指定數據包的最大大小(有效載荷大小),並將第1通信路徑CP 11側的有效載荷大小設定得小,將第2通信路徑CP 12側的有效載荷大小設定得大。由此,可以使第1通信路徑CP 11適合於要求低延時的數據D1,使第2通信路徑CP 12適合於要求高吞吐量的數據D2。
根據第1實施例的電動機控制裝置,即使在CPU 1和ASIC 2之間,通過高速串行總線(PCI-EX)構成收發要求低延時的第1數據D1的第1通信路徑CP 11和收發要求高吞吐量的第2數據D2的第2通信路徑CP 12,也能夠調整與各個通信路徑相關的緩衝區大小、有效載荷大小以及通道數這些參數,由此能夠低延時地收發第1數據D1,並且高吞吐量地收發第2數據D2。
由此,根據第1實施例的電動機控制裝置,在不同的電路裝置之間,能夠與各自的特性對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信,並能夠提高控制工具機、機器人等中的電動機的電動機控制裝置的性能。這些在其他實施例和變形例中也相同。
另外,高速串行總線並不限定於PCI-EX,此外,要調整的參數當然也並不限定於緩衝區大小、有效載荷大小以及通道數。並且,根據第1實施例的電動機控制裝置,也可以經由與各自的特性對應的、不同特性的通信路徑來進行要求低延時的數據通信和要求高吞吐量的數據通信。這些在以下說明的第2實施例中也相同。
圖6是表示本發明的電動機控制裝置的第2實施例的主要部分的框圖,示出了與CPU 1連接的ASIC 2中的I/F 20b、以及第1通信路徑CP 21和第2通信路徑CP 22。另外,ASIC 2的結構相當於參照圖8說明的結構,圖8中的I/F 20相當於圖6所示的I/F 20b。
如之前參照圖1中的(c)說明了概要的那樣,在第2實施例的電動機控制裝置中,在CPU 1和ASIC 2之間,通過並行總線構成收發要求低延時的第1數據D1的第1通信路徑CP 21,並通過高速串行總線(PCI-EX)構成收發要求高吞吐量的第2數據D2的第2通信路徑CP 22。
如圖6所示,ASIC 2的I/F 20b包括:用於第1通信路徑(並行總線)CP 21的第1通信路徑I/F 221、用於第2通信路徑(PCI-EX)CP 22的第2通信路徑I/F 222以及總線橋223。其中,總線橋223是用於經由第1、第2通信路徑I/F 221、222而連接第1、第2通信路徑CP 21、CP 22和ASIC 2的內部總線29的電路。
作為第1通信路徑CP 21,例如可以應用PCI(Peripheral Component Interconnect,外設部件互連)、IFC(International Field-bus Consortium,國際現場總線標準)、ATA(Advanced Technology Attachment,高級技術附加裝置標準)、60x總線以及啟動接口(Boot I/F)這樣的各種標準的並行總線。
然而,PCI-EX等高速串行總線例如是僅由一對或多個差動對構成的接口,串行/並行變換需要預定的時間,因此在收發信號時存在一定的時間損耗(time loss)。但是,例如可以將信號的頻率(轉發速度)設為8GHz左右。與此相對,PCI等並行總線例如是由多個地址線、多個數據線以及多個控制線構成,不需要變換數據(信號),因此時間損耗小。但是,信號的頻率例如延遲到100MHz左右。
因此,在該第2實施例的電動機控制裝置中,在CPU 1和ASIC 2之間,通過並行總線構成第1通信路徑CP 21,由此,可以使第1通信路徑CP 21適合於要求低延時的數據D1,通過高速串行總線構成第2通信路徑CP 22,由此可以使第2通信路徑CP 22適合於要求高吞吐量的數據D2。
圖7是表示本發明的電動機控制裝置的第3實施例的主要部分的框圖,示出了與CPU 1連接的ASIC 2中的I/F 20c、以及第1通信路徑CP 31和第2通信路徑CP 32。另外,ASIC 2的結構相當於參照圖8說明的結構,圖8中的I/F 20對應於圖7所示的I/F 20c。
如之前參照圖1中的(d)說明了概要的那樣,第3實施例的電動機控制裝置是如下的裝置:經由通信路徑CP 3進行CPU 1和ASIC 2之間的數據通信,通信路徑CP 3包括高速串行總線(例如,PCI-EX)中的至少2個虛擬模式的信道CP 31、CP 32。在此,在至少2個虛擬模式的信道CP 31、CP 32中,設為第1數據D1的第1優先級高於第2數據D2的第2優先級來進行通信,其中,第2數據D2的大小大於第1數據D1的大小。
如圖7所示,ASIC 2的I/F 20c例如應用了PCI-EX中的2個虛擬模式的信道CP 31和CP 32,由此,包括相當於參照圖3說明的第1實施例中的第1、第2通信路徑緩衝部211、212的第1、第2虛擬信道緩衝部231、232。並且,I/F 20c包括總線橋233和虛擬信道控制部234。
虛擬信道控制部234例如是進行用於將連接CPU 1和ASIC 2的高速串行總線CP 3用作2個虛擬模式的信道CP 31、CP 32的控制的裝置,例如,也進行使大小較小的第1數據D1的優先級高於第2數據D2的優先級的處理,其中,第2數據D2的大小大於第1數據D1的大小。此外,總線橋233是用於經由緩衝部231、232和虛擬信道控制部234而連接高速串行總線CP 3與ASIC 2的內部總線29的電路。
然而,例如在PCI-EX的標準中,具有將1個信道使用為多個信道的虛擬信道(虛擬模式)的功能,能夠按照各個信道設定訪問的優先級。在該第3實施例的電動機控制裝置中,使高速串行總線(PCI-EX)中的2個虛擬模式的信道CP 31和CP 32對應,例如設置用於大小較小的數據D1的第1虛擬信道緩衝部231和用於大小較大的數據D2的第2虛擬信道緩衝部232。
其中,大小較小的數據D1相當於要求低延時的數據,此外,大小較大的數據D2相當於要求高吞吐量的數據。例如,通過虛擬信道控制部234指定這些數據D1和D2的優先級,例如將要求低延時的大小較小的數據D1的優先級設定得高,將要求高吞吐量的大小較大的數據D2的優先級設定得低。
由此,例如要求低延時的大小較小的數據D1不會因大小較大的數據D2的數據通信而等待,以較短的延遲進行數據通信。即,根據第3實施例的電動機控制裝置,能夠與各自的特性對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。
即,根據第3實施例的電動機控制裝置,不會使較小的數據因較大的數據等待,由此能夠高效地傳輸數據,這會使得要求低延時的大小較小的數據以較短的延遲進行數據通信。另外,作為基於高速串行總線CP 3的虛擬信道,以基於PCI-EX的2個虛擬模式的信道CP 31、CP 32為例進行了說明,但並不限定於此。
根據第1實施方式的電動機控制裝置,在不同的電路裝置之間,能夠與各自的特性對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。此外,根據第1實施方式的電動機控制裝置,也可以經由與各自的特性對應的、不同特性的通信路徑來進行要求低延時的數據通信和要求高吞吐量的數據通信。
即,可以經由具有低延時特性的第1通信路徑進行要求低延時的數據通信,此外,可以經由具有高吞吐量特性的第2通信路徑進行要求高吞吐量的數據通信。由此,能夠提高控制工具機、機器人等中的電動機的電動機控制裝置的性能。
根據本發明的電動機控制裝置,實現了如下效果:在不同的電路裝置之間,能夠與各自的特性對應地兼顧要求低延時的數據通信和要求高吞吐量的數據通信。
以上,說明了實施方式,但在此記載的所有例子、條件是以幫助理解發明和應用於技術的發明的概念為目的記載的,尤其,所記載的例子、條件並不是限定本發明的範圍的。此外,說明書中這樣的記載不是表示發明的優點和缺點。詳細記載了發明的實施方式,但也應理解在不脫離發明的精神和範圍的情況下進行各種變更、置換、變形。