欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

定位絕對碼的解碼裝置及解碼方法與流程

文檔序號:12861911閱讀:225來源:國知局
本發(fā)明涉及一種定位絕對碼的解碼裝置及應用于其上的解碼方法。
背景技術
::光學編碼器(例如:旋轉編碼器、光學尺,本說明書以下將以光學尺通稱光學編碼器)依輸出型式可分為增量型(incremental)輸出以及絕對型(absolute)輸出。其中絕對輸出型光學尺具有可以直接讀出位移坐標的絕對值、沒有累積誤差、電源切除后位置信息不會丟失等優(yōu)點,廣泛使用于數控機床、伺服傳動、機器人等需要檢測位移的裝置設備。而借由光學尺讀取到的信號,需經由對應的解碼器以取得待測物品的位置信息,因此,如何設計適用于絕對型輸出光學尺的解碼裝置以及解碼方法,乃目前業(yè)界致力的課題之一。技術實現(xiàn)要素:本發(fā)明所要解決的技術問題是提供一種定位絕對碼的解碼裝置及應用于其上的解碼方法。為了實現(xiàn)上述目的,本發(fā)明提供了一種定位絕對碼的解碼裝置,包括線性反饋移位暫存器、查表電路、計數器、以及計算電路。線性反饋移位暫存器包括n個暫存器,n個暫存器以第一頻率載入定位絕對碼,并根據時脈信號進行移位運算,時脈信號具有第二頻率,第二頻率不小于第一頻率。查表電路根據n個暫存器儲存的值,對應輸出查表結果值以及查表有效旗標,其中查表結果值具有k種不同數據,k≤(2n-1),查表有效旗標指示查表結果值是否有效。計數器根據查表有效旗標進行重置,并且根據時脈信號進行計數運算以產生計數結果值。當查表有效旗標指示為有效時,計算電路根據查表結果值以及計數結果值計算產生解碼結果。為了更好地實現(xiàn)上述目的,本發(fā)明還提供了一種定位絕對碼的解碼方法,包括下列步驟。提供線性反饋移位暫存器,包括n個暫存器,n個暫存器以第一頻率載入定位絕對碼。根據時脈信號以線性反饋移位暫存器進行移位運算,時脈信號具有第二頻率,第二頻率不小于第一頻率。使用查表,根據n個暫存器儲存的值,對應輸出查表結果值以及查表有效旗標,其中查表結果值具有k種不同數據,k≤(2n-1),查表有效旗標指示查表結果值是否有效。根據時脈信號進行計數運算以產生計數結果值,其中計數結果值根據查表有效旗標進行重置。當查表有效旗標指示為有效時,根據查表結果值以及計數結果值計算產生一解碼結果。以下結合附圖和具體實施例對本發(fā)明進行詳細描述,但不作為對本發(fā)明的限定。附圖說明圖1a為單軌絕對值輸出型光學直線柵尺的示意圖;圖1b為單軌絕對值輸出型光學圓柵尺的示意圖;圖2a為線性反饋移位暫存器的示意圖;圖2b為如圖2a的線性反饋移位暫存器所產生數據序列的示意圖;圖3為依照本發(fā)明一實施例的解碼裝置示意圖;圖4為依照本發(fā)明另一實施例的解碼裝置示意圖;圖5a為依照本發(fā)明一實施例的彈性線性反饋移位暫存器示意圖;圖5b為如圖5a運算邏輯電路的示意圖;圖6a為依照本發(fā)明另一實施例的彈性線性反饋移位暫存器示意圖;圖6b為如圖6a運算邏輯電路的示意圖;圖7為依照本發(fā)明一實施例的對lfsr所產生數據序列以固定間隔進行取樣的示意圖;圖8為依照本發(fā)明一實施例的查表電路的數據對應關系示意圖;圖9為依照本發(fā)明一實施例的查表電路的真值表示意圖;圖10為依照本發(fā)明一實施例的查表電路的電路實作示意圖;圖11為依照本發(fā)明一實施例的解碼過程示意圖;圖12為依照本發(fā)明一實施例的解碼方法流程圖。其中,附圖標記1:解碼裝置100、100_f、100_g:線性反饋移位暫存器102:查表電路104:計數器106:計算電路108:時脈開關電路200:反饋多工器210、310:多工器212、312:邏輯互斥或閘a:第一控制數據b:第二控制數據c:計數結果值clk:時脈信號calf(1)~calf(3)、calg(1)~calg(3):運算邏輯電路r(1)~r(4):暫存器s(1)~s(2):切換開關s400、s402、s404、s406、s408:步驟vf:查表有效旗標x:定位絕對碼y:查表結果值z:解碼結果具體實施方式下面結合附圖對本發(fā)明的結構原理和工作原理作具體的描述:為了獲得一位置信息,絕對輸出型光學尺以多組光電感測器來讀取一組位置信息。由于必須考慮到雜訊的抑制、判別正反轉、以及防止誤讀來提高可靠度,因此絕對輸出型光學尺在編碼方式上多采用多軌格雷碼(graycode)編碼。格雷碼與一般二進位碼最大的差異在于格雷碼每次只變動一個位元,因此不易產生誤讀。然而,以多軌排列產生格雷碼的做法,即使引入非常微小的偏角量,它也可能造成讀頭信號的相位差,產生位置誤判,因此漸漸發(fā)展成為單軌絕對值輸出型光學尺。單軌絕對輸出型光學尺的刻度可以使用m序列碼(maximumlengthsequence,mls)進行編碼,mls是一種偽隨機二元序列(pseudorandombinarysequence),可利用線性反饋移位暫存器(linearfeedbackshiftregisters,lfsr)產生。對于使用lfsr編碼的光學尺,在解碼端也可以利用線性反饋移位暫存器來還原編碼的順序以得到位置信息。于實作中,單軌絕對值輸出型光學尺包括直接柵尺與圓柵尺,圖1a為單軌絕對值輸出型光學直線柵尺的示意圖,圖1b為單軌絕對值輸出型光學圓柵尺的示意圖,由lfsr所產生的偽隨機二元序列依序刻畫于光學尺上,可由不同的透光程度區(qū)分0與1,例如可透光區(qū)域為1,遮光區(qū)域為0。在光學尺的兩側可分別設置有光源及光感測器陣列,借由光感測器陣列讀到的數據,可以經由后續(xù)的解碼處理得到所代表的光學尺絕對位置。如圖1a及圖1b所示,光感測器陣列可以借由接收到的光而讀取柵尺上鄰近的多個碼,而能夠根據此信息獲得絕對位置。直線柵尺可用以測量位移量,圓柵尺可設置于繞著一轉軸旋轉的圓盤,用以測量物體的旋轉量。然而,隨著對于位置解析度的要求提升,光學尺需要增加檢測長度,亦即需要更多位元(bit)數的m序列偽隨機碼。而對于位元數很多的mls,若是單純使用移位暫存器還原編碼順序,會造成位置信息的獲得非常緩慢。更有甚者,移位暫存器還原編碼順序的演算法需與刻畫于光學尺尺身的mls隨機碼匹配設計。若能發(fā)展一種可讀取多種版本尺身序列的讀頭架構,就可節(jié)省讀頭的開發(fā)費用。而對于位置絕對碼的解碼方法,另一種方式是采用查表(lookuptable,lut)的方式,將刻畫于光學尺身的每一個mls隨機碼,產生唯一的對應順序信號,使得解碼端獲得順序信號時,立即知道光學尺讀頭與尺身的對應位置。其做法是利用安裝于光學尺讀頭的多組光電感測器,經由讀取光學尺尺身mls隨機碼的信號,輸入至lut的地址總線(addressbus);當lut獲得有效的地址時,立即輸出一對應的數據至數據總線(databus)。而此方法亦面臨相同的議題,隨著光學尺檢測長度的增加,更多位元數的m序列偽隨機碼使得lut容量急速膨脹,占據過大的內存空間與硬件面積,容量過大的lut將造成光學尺讀頭尺寸與制作成本的困擾。以下首先說明關于以lfsr相關操作的敘述,lfsr包括多個暫存器,其特征在于暫存器的輸入是暫存器前一輸出狀態(tài)(previousstate)的線性函數,在lfsr當中此線性函數常見為使用互斥或閘(xor)實現(xiàn)。lfsr當中暫存器的初始值叫做「種子(seed)」,因為lfsr的運算是確定性的,所以由lfsr所生成的數據流完全可由lfsr當時或者之前的狀態(tài)決定。而且,由于lfsr的可能狀態(tài)是有限的,它會是一個重復的循環(huán)。因此通過適當的預選多項式處理,lfsr可以生成看起來是隨機的且循環(huán)周期非常長的序列。具體而言,lfsr可以根據xor反饋點的位置,或稱作抽頭(tap)位置,而改變對應的多項式。對于包括n個暫存器的lfsr,當lfsr的抽頭位置對應到一個本原多項式(primitivepolynomial)時,只要暫存器的初始狀態(tài)并非全部為0,則可以產生長度為(2n-1)的mls。同樣的,當獲得一組「種子」時,可以利用lfsr的移位運算與計數,找出「種子」位于該lfsr生成的數據流的位置。圖2a為線性反饋移位暫存器的示意圖,此圖以包括4個暫存器的lfsr作為例子說明,如圖所示,暫存器r3的下一狀態(tài)為暫存器r3目前狀態(tài)以及暫存器r0目前狀態(tài)的xor運算結果,此圖對應的本原多項式為(x4+x3+1)。圖2b為如圖2a的線性反饋移位暫存器所產生數據序列的示意圖,如此位元長度為4的lfsr,可以序列產生長度為(24-1)=15的mls。圖2a所為的僅是一種lfsr的實作方式,此例中是向右移位的架構,于其他實施例中,lfsr亦可以使用向左移位的架構,其操作原理類似,于此不再重復贅述。如前所述,對于檢測長度很長的光學尺,若使用lfsr解碼則可能速度過于緩慢,使用lut則可能所需硬件空間過大不利于降低成本,因此本發(fā)明提出一種混合式的解碼架構,以達成兼顧計算時間與硬件面積的優(yōu)點。圖3為依照本發(fā)明一實施例的解碼裝置示意圖。定位絕對碼的解碼裝置1,包括線性反饋移位暫存器100、查表電路102、計數器104、以及計算電路106。線性反饋移位暫存器100包括n個暫存器,n個暫存器以第一頻率f1載入定位絕對碼x,并根據時脈信號clk進行移位運算,時脈信號clk具有第二頻率f2,第二頻率f2不小于第一頻率f1。查表電路102根據n個暫存器儲存的值,對應輸出查表結果值y以及查表有效旗標vf,其中查表結果值y具有k種不同數據,k≤(2n-1),查表有效旗標vf指示查表結果值y是否有效(valid)。計數器104根據查表有效旗標vf進行重置(reset),并且根據時脈信號clk進行計數運算以產生計數結果值c。當查表有效旗標vf指示為有效時,計算電路106根據查表結果值y以及計數結果值c計算產生解碼結果z。以下詳細說明各元件及相關操作情形。線性反饋移位暫存器100包括n個暫存器,暫存器例如可由具有預置(preset)功能的d型正反器(flipflop)實現(xiàn),線性反饋移位暫存器100可借由預置d型正反器,將光學感測器讀取到的定位絕對碼x載入n個暫存器當中,作為n個暫存器的初始值,定位絕對碼x例如是具有n個位元的信號。此載入定位絕對碼x的動作可以操作于第一頻率f1,例如相關于所需求的光學量測頻率。舉例而言,對于運動速度20m/s,以10μm周期變換來運算,第一頻率f1可以設定為2mhz,亦即,對于此解碼裝置1,解碼的運算頻寬需大于2mhz。查表電路102根據n個暫存器儲存的值進行查表,查表電路102內部可以儲存「部分的」線性反饋移位暫存器100所序列產生的數據。舉例而言,線性反饋移位暫存器100可產生長度為(2n-1)的mls,則查表電路102可儲存完整的(2n-1)筆數據,或是這(2n-1)筆數據其中的k筆數據所對應的位置信息,k≤(2n-1)。亦即,當線性反饋移位暫存器100載入定位絕對碼x之后,使用定位絕對碼x不一定能從查表電路102找到對應的查表結果,因此查表電路102更包括一輸出接腳查表有效旗標vf,用以指示目前輸出的查表結果值y是否有效。由于查表電路102可以僅存有部分mls所對應的位置信息,能夠有效減少查表電路102所需的硬件面積。若定位絕對碼x能夠從查表電路102找到對應的位置信息時,解碼動作即已完成,可以根據查表結果值y輸出位置信息。反之,若定位絕對碼x無法從查表電路102找到對應的位置信息時,輸出的查表有效旗標vf指示為無效,則計算電路106可以先不輸出結果,解碼動作尚未完成,此時可由線性反饋移位暫存器100以及計數器104繼續(xù)后續(xù)的解碼操作運算。在查表有效旗標vf指示為無效的情況下,線性反饋移位暫存器100可以根據時脈信號clk進行位移運算,將n個暫存器改變?yōu)橄乱粻顟B(tài),根據位移運算后的結果再次進行查表,并且可重復進行如此的位移運算,直到在查表電路102成功找到數據,輸出的查表有效旗標vf指示為有效為止。于此同時,計數器104可以進行計數而得到計數結果值c,以計算在上述的過程中,線性反饋移位暫存器100進行了幾次位移運算。此計數結果值c相當于代表從起始的定位絕對碼x,要再經過幾次位移運算后,才可以從查表電路102成功找到對應數據,而找到有效的查表結果值y。亦即,定位絕對碼x所真正對應的位置數據,與查表結果值y之間,具有的差異量為c。因此,當查表有效旗標vf指示為有效時,計算電路106可以根據查表結果值y以及計數結果值c,例如是通過加法運算(或是減法運算),將查表結果值y(或是移位后的查表結果值y、或是查表結果值y的倍數)加上計算結果值c以產生解碼結果z。同時,當查表有效旗標vf指示為有效時,表示此次解碼動作已結束,因此可對計數器104進行重置,例如將計算結果值c歸零,以利于下一次的解碼運算。如上所述,每一次的解碼動作可能需要線性反饋移位暫存器100多次的位移運算以及計數器104多次的累加,因此,線性反饋移位暫存器100位移運算以及計數器104累加所根據的時脈信號clk的第二頻率f2,應大于或等于線性反饋移位暫存器100載入定位絕對碼x的第一頻率f1。而第一頻率f1與第二頻率f2的關系,則與查表電路102所存的數據間隔相關,若查表電路102所存的數據在偽隨機序列碼中間隔較遠,則代表可能需要經過較多次的線性反饋移位暫存器100位移運算以及計數器104累加,才能成功找到數據,因此應給予第一頻率f1與第二頻率f2較大的差異量;反之,若查表電路102所存的數據較多,彼此在偽隨機序列碼中間隔較近,則可以給予第一頻率f1與第二頻率f2較小的差異量。同理,亦可以根據查表電路102的操作速度,決定查表電路102應儲存的數據間隔。舉例而言,若第一頻率f1是2mhz,查表電路102找數據的速度可操作于400mhz,考慮實際硬件因素以及安全系數范圍,可以將查表電路102所儲存的數據間隔設定為50~100,即線性反饋移位暫存器100可以經過至多50~100次位移運算后,成功在查表電路102找到對應的位置數據。如圖3所示的解碼裝置1所使用的解碼方法,可參考圖12所示為依照本發(fā)明一實施例的解碼方法流程圖,此解碼方法包括下列步驟。步驟s400:提供線性反饋移位暫存器,線性反饋移位暫存器包括n個暫存器,以第一頻率f1載入定位絕對碼x。步驟s402:根據時脈信號clk以線性反饋移位暫存器進行移位運算,時脈信號clk具有第二頻率f2,第二頻率f2不小于第一頻率f1。步驟s404:使用查表,根據n個暫存器儲存的值,對應輸出查表結果值y以及查表有效旗標vf,其中查表結果值y具有k種不同數據,k≤(2n-1),查表有效旗標vf指示查表結果值y是否有效。步驟s406:根據時脈信號clk進行計數運算以產生計數結果值c,其中計數結果值c根據查表有效旗標vf進行重置。步驟s408:當查表有效旗標vf指示為有效時,根據查表結果值y以及計數結果值c計算產生解碼結果z。使用如圖3所示的解碼裝置以及圖12所示的解碼方法,能夠結合lfsr硬件電路小與lut速度快的優(yōu)點。由于查表當中可以僅存有部分的數據,因此可以有效節(jié)省電路面積,而對于查表當中未存的部分,則可以使用lfsr進行位移,直到找到數據為止。由于lut的查表速度通常遠高于光學尺所需的解碼速度需求,因此使用容量較小的lut,搭配操作需花費較多時間的lfsr,仍可以不致影響到所需的解碼速度,并能夠降低硬件成本。此外,此架構亦使得電路設計更具有彈性,當電路能夠給予的空間較大,則可以給予lut較大容量,以加快速度;而當解碼速度的需求較為寬松,則可以給予lfsr較大長度,以降低lut所需的電路面積。因此,本揭露的解碼裝置及方法于設計上具有彈性,可適用于多種應用的光學尺。圖4為依照本發(fā)明一實施例的解碼裝置示意圖。與圖3所示的實施例相較,此例中的解碼裝置2更包括時脈開關電路108。時脈開關電路108可根據原始時脈信號o_clk及查表有效旗標vf產生閘控時脈信號(gatedclock),并以閘控時脈信號作為傳送到線性反饋移位暫存器100以及計數器104的時脈信號clk。此時脈開關電路108可以在查表有效旗標vf指示為有效時(相當于代表解碼已完成),停止時脈輸出,使得時脈信號clk停止振蕩,如此線性反饋移位暫存器100不再進行位移,且計數器104亦停止計數,如此更可確保解碼裝置2的運作正確,且由于解碼完成后,線性反饋移位暫存器100及計數器104即相當于休息狀態(tài),而能夠達到降低電路功率消耗的優(yōu)點。在一實施例中,線性反饋移位暫存器100可彈性的控制抽頭位置以及編碼位元數,例如線性反饋移位暫存器100可根據第一控制數據a改變位元長度,并可根據第二控制數據b改變反饋點位置,即改變所使用的多項式。使用如此的線性反饋移位暫存器100,可以用一種讀頭硬件設計,符合多種版本尺身圖案解碼的需求,即以單一硬件同時滿足不同長度、不同解析度的應用需求。lfsr的電路實作可以選擇使用galois架構或是fibonacci架構,以下分別說明在這兩種架構之下,相關于彈性控制抽頭位置以及編碼位元數的控制電路實作方式。圖5a為依照本發(fā)明一實施例的彈性線性反饋移位暫存器示意圖,此例中是使用右移的galois架構,并以n=4作為范例說明。線性反饋移位暫存器100_g包括n個暫存器r(1)~r(n)、反饋多工器200、(n-1)個運算邏輯電路calg(1)~calg(n-1)。反饋多工器200具有多個輸入端、一選擇控制端、及一輸出端,其中反饋多工器200的選擇控制端耦接第一控制數據a,反饋多工器200的多個輸入端分別耦接n個暫存器r(1)~r(n)的輸出端(例如是d型正反器的q腳位)。第i(1≤i≤n-1)個運算邏輯電路calg(i)根據第二控制數據b的第i個區(qū)段b(i),將第i個暫存器r(i)的輸入端(例如是d型正反器的d腳位)選擇性地耦接至下列接腳的其中之一:反饋多工器200的輸出端、第(i+1)個暫存器r(i+1)的輸出端、以及反饋多工器200的輸出端與第(i+1)個暫存器r(i+1)的輸出端執(zhí)行邏輯互斥或(xor)的運算結果。圖5b為如圖5a當中運算邏輯電路的示意圖,圖5b所示為一種范例的實作方式,當然本發(fā)明并不限于此。在此例中,運算邏輯電路calg包括多工器210以及xor閘212。第i個運算邏輯電路calg(i)的多工器210(i)根據第二控制數據b的第i個區(qū)段b(i)(可包括多個位元)從三個輸入中選擇其中一個輸出。根據圖5a所示的例子,可以由第二控制數據b而決定每個暫存器的輸入是否直接連接到前一級暫存器,或是有經過反饋信號xor運算的結果,相當于決定lfsr的抽頭位置,即決定了使用的多項式。而第一控制數據a的位元寬度可相關于反饋多工器200的輸入數量,以n=4為例,反饋多工器200是四對一的多工器,則第一控制數據a可以是2位元的控制信號,以從四個輸入中選擇其中一個輸出,反饋多工器200決定從哪一個暫存器作反饋,即決定了串聯(lián)的暫存器數量。因此,圖5a所示的線性反饋移位暫存器100_g,可根據第一控制數據a改變位元長度,并根據第二控制數據b改變反饋點位置。圖6a為依照本發(fā)明一實施例的彈性線性反饋移位暫存器示意圖,此例中是使用右移的fibonacci架構,并以n=4作為范例說明。線性反饋移位暫存器100_f包括n個暫存器r(1)~r(n)、(n-1)個運算邏輯電路calf(1)~calf(n-1)、(n-2)個切換開關s(1)~s(n-2)。圖6b為如圖6a運算邏輯電路的示意圖。第i個運算邏輯電路calf(i)包括多工器310(i)以及邏輯互斥或(xor)閘312(i),多工器310(i)具有第一輸入端、第二輸入端、控制選擇端、及輸出端,邏輯互斥或閘312(i)具有第一輸入端、第二輸入端、及輸出端,多工器310(i)的第一輸入端耦接邏輯互斥或閘312(i)的輸出端,多工器310(i)的第二輸入端耦接邏輯互斥或閘312(i)的第二輸入端,多工器310(i)的選擇控制端耦接第二控制信號b的第i個區(qū)段b(i)(可以是1個位元),邏輯互斥或閘312(i)的第一輸入端耦接第(i+1)個暫存器r(i+1)的輸出端。第i個切換開關s(i)根據第一控制數據a的第i個區(qū)段a(i)(可以是1個位元),將第(i+1)個暫存器r(i+1)的輸入端選擇性地耦接至下列接腳的其中之一:第(i+2)個暫存器r(i+2)的輸出端,以及第i個運算邏輯電路calf(i)的多工器310(i)的輸出端。其中若i=1,第i個運算邏輯電路calf(i)的邏輯互斥或閘312(i)的第二輸入端耦接第i個暫存器r(i)的輸出端;若2≤i≤n-1,第i個運算邏輯電路calf(i)的邏輯互斥或閘312(i)的第二輸入端耦接第(i-1)個運算邏輯電路calf(i-1)的多工器的輸出端。根據圖6a所示的例子,第二控制數據b決定每個暫存器的輸出是否會經過由反饋路徑(由運算邏輯電路calf串聯(lián)形成)的xor運算,相當于決定lfsr的抽頭位置,即決定了使用的多項式。而第一控制數據a可以控制暫存器之間斷開的位置,在何處形成反饋,即決定了串聯(lián)的暫存器數量。因此,圖6a所示的線性反饋移位暫存器100_f,可根據第一控制數據a改變位元長度,并根據第二控制數據b改變反饋點位置。在fibonacci架構中,由于運算邏輯電路calf形成的反饋路徑包括多個串聯(lián)的xor閘,成為電路延遲的關鍵路徑(criticalpath),此計算路徑存在于第一個暫存器與最后一個暫存器之間。相較之下,在galois架構中,每個暫存器之間至多僅會經過一個運算邏輯電路calg(包括一個xor閘),因此關鍵路徑較短,可使得電路操作于較高的頻率。對于有較高速需求的應用,可以選擇使用galois架構的lfsr。以下詳細說明查表電路102所存的數據。圖7為依照本發(fā)明一實施例的對lfsr所產生數據序列以固定間隔進行取樣的示意圖,此處以n=4為例說明,lfsr使用本原多項式序列產生mls的長度為15(=2n-1),mls中每一個碼所對應的位置信息如圖7所示,是依序由0001排列到1111。而查表電路102可儲存圖7此表格中的部分內容。舉例而言,查表電路102所儲存的k種數據,是以固定間隔m對(2n-1)個數據取樣而決定。如圖7所示的例子,此固定間隔m=4,因此查表電路102可以成功找到定位絕對碼{1000}、{0111}、{1101}、{0100}所對應的位置信息(如圖7中深色的部分),若是lfsr暫存器的狀態(tài)并非屬于這四種,則查表電路102無法成功找到數據,所輸出的查表有效旗標vf會指定為無效。承接圖7所示的例子,圖8為依照本發(fā)明一實施例的查表電路的數據對應關系示意圖。由于查表電路102僅儲存有4筆數據,因此對應的數據不需要儲存全部的位元,在此例中,僅需儲存位置信息從最高有效位(mostsignificantbit,msb)數來的兩個位元,即足以代表4筆不同數據,如圖8數據欄所示的儲存兩個位元即可。而在執(zhí)行解碼時,可在讀取查表結果值y之后,將查表結果值y左移位2位元,再于最低有效位(leastsignificantbit,lsb)的兩位元補上01,即可還原原始的位置信息。在一實施例中,固定間隔m的長度是2p,p為小于n的正整數,如圖7以及圖8所示的例子,n=4,p=2。以長度為2p的固定間隔進行取樣的優(yōu)點為,可以直接截斷靠近lsb的p個位元,如圖8所示的例子,是直接將圖7的位置信息靠近lsb的p個位元截斷。而在解碼還原時,亦可以直接將查表結果值y左位移p個位元即可。而截斷p個位元使得原始完整位置信息所缺少的p個位元信息,則可以由計數器104補上,亦即計數器104可以是p個位元的計數器,計算電路106可將查表結果值y左位移p個位元后,加上計數器104所產生的p個位元的計數結果值c,以得到解碼結果z。如圖7以及圖8所示的例子,借由使用固定間隔m=2p進行取樣,可以有效將查表的尺寸縮小為原本的(1/m),所截斷的p個位元越多,查表的尺寸可以越小。舉例而言,對于具有212個刻度的光學尺,可以借由固定間隔m=24進行取樣,如此查表的尺寸可以縮小為1/16倍,大幅減少電路面積。當然,此處以m等于2的冪次方作為間隔取樣僅為示例性說明,于實作中m也可以是例如10、50、100等等的正整數。執(zhí)行解碼時,計算電路106可將查表結果值y乘以m之后,加上計數器104所產生的計數結果值c,以得到解碼結果z。查表電路102輸出查表結果值y以及查表有效旗標vf,其電路實作可以有多種方式。舉例而言,查表電路102可以包括判斷電路,當查表電路102根據n個暫存器儲存的值無法成功找到對應的查表數據時,查表結果值y為一預設輸出值q,判斷電路可以借由判斷預設輸出值q及查表結果值y是否相等,以產生查表有效旗標vf。在另一實施例中,當查表電路102無法成功找到對應的查表數據時,查表結果值y可以維持前一個時脈所輸出的查表結果值y。查表電路102可由內存電路實作,如圖8的例子所示,當輸入內存的地址時,找到對應的數據。而由于查表電路102所儲存的數據是經過取樣后的不連續(xù)數據,地址信息并非規(guī)則性排列,且輸入的地址位元數與輸出的數據位元數可能不相等,因此在一實施例中,查表電路102可以借由組合邏輯電路(combinationalcircuit)實現(xiàn)。圖9為依照本發(fā)明一實施例的查表電路的真值表(truthtable)示意圖。此范例是承接圖7及圖8,對于取樣的數據(表格中的深色部分),查表有效旗標vf設定為1,查表結果值y則如同圖8所示。而對于沒有取樣的數據(表格中的淺色部分),查表有效旗標vf設定為0,查表結果值y則可以是隨意項x(don’tcareterm)。如圖9所示的真值表,是4個輸入與3個輸出(查表結果值y具有2位元、查表有效旗標vf具有1位元)的對應關系,可以由邏輯合成技術完成相對應的組合邏輯電路,由于具有隨意項x的彈性而能夠達到邏輯閘數量的最佳化。組合邏輯電路沒有記憶效應,可根據當下的輸入決定輸出的結果,并且可以針對特定的查表需求,而完成節(jié)省電路面積的硬件實現(xiàn)方式。在一實施例中,查表電路102可以使用可程式邏輯陣列(programmablelogicarray,pla)實現(xiàn),因此可以實現(xiàn)多種輸入(查表地址)與輸出(查表結果值y及查表有效旗標vf)的對應關系,圖10為依照本發(fā)明一實施例的查表電路的電路實作示意圖,pla可實現(xiàn)多樣化的組合邏輯,可以根據實際的查表內容,控制圖10范例中的開關切換。以下使用一個范例說明本揭露的解碼裝置及方法于時序上的操作情形。圖11為依照本發(fā)明一實施例的解碼過程示意圖。在時間t0時,線性反饋移位暫存器100載入的定位絕對碼x是0101,查表電路102無法找到此數據,因此查表有效旗標vf指示為無效,線性反饋移位暫存器100進行位移運算,計數器104開始累加。時間t1時,經過位移后的線性反饋移位暫存器100儲存的數據為1011,查表電路102仍然無法找到此數據,查表有效旗標vf指示還是無效,此時計數結果值為1。時間t2時,再次經過位移后的線性反饋移位暫存器100儲存的數據為0111,查表電路102成功找到此數據,對應的查表結果值y例如是01,此時計數結果值c為2。由于查表有效旗標vf指示為有效,計算電路106可將查表結果值y左位移2位元(或乘以4),并可補上原本截斷的2位元(“01”),再加上計數結果值c=2,而得到解碼結果z=0101(01左位移2位元后補上01)+0010(2的二進位表示)=0111。可參考圖7,當定位絕對碼x=0101時,對應的位置信息即為0111。此時解碼動作已完成,計算電路106已成功輸出解碼結果z,因此計算電路106可適當控制以使得后續(xù)時間的電路動作不再影響輸出結果。而如圖4所示的實施例,解碼裝置2包括有時脈開關電路108,則可以在時間t3開始時,停止時脈信號振蕩,使得線性反饋移位暫存器100以及計數器104停止運算,確保電路工作正確,并且能夠減少功率消耗。當然,本發(fā)明還可有其它多種實施例,在不背離本發(fā)明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發(fā)明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發(fā)明所附的權利要求的保護范圍。當前第1頁12當前第1頁12
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
佛冈县| 松滋市| 彭阳县| 康定县| 左贡县| 酒泉市| 南丹县| 中西区| 七台河市| 安龙县| 天水市| 湟中县| 武夷山市| 岳池县| 奉节县| 五家渠市| 高尔夫| 和硕县| 德钦县| 梁平县| 隆化县| 勃利县| 阳东县| 望都县| 通海县| 美姑县| 松桃| 克拉玛依市| 乐昌市| 思茅市| 仲巴县| 山东省| 石狮市| 新竹县| 大厂| 汉源县| 延寿县| 晋中市| 河源市| 贡嘎县| 云梦县|