一種減小尺寸為非整數比的器件的匹配誤差的編碼方法
【技術領域】
[0001] 本發(fā)明屬于集成電路編碼技術領域,具體設及一種減小尺寸為非整數比的器件的 匹配誤差的編碼方法。
【背景技術】
[0002] 在過去的幾十年中,集成電路技術得到了迅猛的發(fā)展。特別是W通訊為首的電子 系統,向著高速率、高性能、高集成度、低成本的方向不斷向前發(fā)展,運就對系統中的各個模 塊提出了更高的要求。如數模轉換器,系統要求提高數模轉換器的采樣速率、量化精度等要 求的同時,也希望提高數模轉換器的轉換效率,降低其功耗。在數模轉換器中,常常會將數 據的高若干位轉為溫度計碼、其余低位保留為二進制碼,并利用與每一個數據位權重相對 應的器件來實現數字到模擬的轉換。要提高轉換器的性能,就要求器件之間具有良好的匹 配精度。
[0003] 在實際的電路設計中,受限于器件的最小尺寸,電路設計工作者常常會遇到一些 無法等比例縮小的器件。而且,隨著工藝尺寸的不斷縮小,器件的邊界效應會越來越強。實 現等比例縮小變得更加困難。
【發(fā)明內容】
[0004] 本發(fā)明的目的是提供一種減小尺寸為非整數比的器件的匹配誤差的編碼方法,解 決了現有技術中存在的尺寸為非整數比的器件的匹配誤差大,非整數比器件的匹配精度差 的問題。 陽〇化]本發(fā)明所采用的技術方案是,一種減小尺寸為非整數比的器件的匹配誤差的編碼 方法,包括W下步驟:
[0006] 步驟1,得到集成電路所需元器件的尺寸比例,并且將其轉換為二進制數據,得到 原碼數據;
[0007] 步驟2,假設步驟1中得到的原碼數據的長度為M化M的取值為2-30之間,將原 碼數據分為低位部分和高位部分,其中低位部分為非整數部分,且低位部分的長度為N,其 余部分為高位部分,且N的取值為0-20,且N<M;
[0008] 步驟3,步驟2中得到的低位部分每位增加一個正整數變量X,得到新的低位部分, 然后統計增加正整數變量X的低位部分的位數為Y;
[0009] 步驟4,將步驟2中得到的高位部分減去步驟3中得到的Y與X的乘積,得到新的 高位部分;
[0010] 步驟5,將步驟4中得到的新的高位部分與步驟3中得到的新的低位部分結合,得 到最終編碼。
[0011] 本發(fā)明的特點還在于,
[0012] 其中步驟3中的正整數變量X為1。
[0013] 其中步驟2中的N大于或等于步驟4中的Y,Y的數值為二進制原始數據位中為 "I"的位的個數。
[0014] 本發(fā)明的有益效果是,該編碼方式包含整數和非整數兩部分。新的編碼方式對非 整數部分的權重增加了一個偏移量。為了減小無用編碼的范圍,偏移量選擇整數部分權重 的最小值,即權重"1"。在新的編碼權重下,需要統計非整數部分編碼為"1"的個數。在整 數部分減去相應的數值,保證新的數據在新的編碼權重下,數值保持不變。新的編碼方式提 高了非整數部分編碼所對應器件之間的匹配精度。
【附圖說明】
[0015] 圖1是本發(fā)明一種減小尺寸為非整數比的器件的匹配誤差的編碼方法的效果對 比圖。
【具體實施方式】
[0016] 下面結合附圖和【具體實施方式】對本發(fā)明進行詳細說明。
[0017] 本發(fā)明一種減小尺寸為非整數比的器件的匹配誤差的編碼方法的具體思路是,將 數據分為整數部分和非整數部分。整數部分的權重都是正整數,而且權重按"2"倍增。非 整數部分的權重都是分數,而且權重按"2"倍減。使用本發(fā)明的編碼方式后,整數部分的權 值保持不變,非整數部分的權重增加"1"。為了保證在新的編碼方式下,輸出保持不變,需 要對原始編碼進行轉換。其編碼轉換的步驟是:第一步,統計原編碼中非整數部分編碼為 "1"的編碼個數;第二步,原編碼中整數部分的數值減去第一步的統計結果,得到新的編碼 數值;第=步,將新的整數部分編碼和原始的非整數編碼組合,得到最終的編碼。本發(fā)明的 編碼方式并沒有改變編碼的輸出數值。
[0018] 本發(fā)明提供了一種減小尺寸為非整數比的器件的匹配誤差的編碼方法,其具體實 施例如下:
[0019] 實施例一:
[0020] 需要設計一塊器件尺寸比為10位的集成電路板,即需設計的元器件的尺寸最大 比為10位二進制數據的大小,即為10位二進制數據1 1 1 1 1 1 1 1 1 1?,F假設需要轉 換的原始二進制數據為1 1 1 1 0 0 1 0 1 0。
[0021] 將上述二進制數據分成高位部分和低位部分,其中低位部分為數據的后四位數 據即1 0 1 0,高位部分為數據的前六位數據即1 1 1 1 0 0。并且將高位部分的最低一位 的權重取為1,則低位部分變?yōu)樾挡糠謾嘀鼐唧w為:〇. 5 0. 25 0. 125 0. 0625,高位部分 權重具體為25 24 23 22 21 2°。 陽022] 給低位部分每位數據加上一個正整數變量n,n為正整數十進制的1,則低位部分 權重具體變?yōu)?1.5 1.25 1.125 1.0625。
[0023] 然后原始數據的高位部分數據1 1 1 1 0 0減去低位部分增加變量的總和即十 進制的數據42,具體為1 1 1 0 1 0,再將新的高位部分和低位部分結合起來就是新的編 碼值:1 1 1 0 1 0 1 0 1 0。 W24] 實施例二
[00巧]需要設計一塊器件尺寸比為30位,即需設計的元器件的尺寸最大比為30位二進 制數據的大小,即為10位二進制數據1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1IIIII1?,F假設需要轉換的原始數據為I111001010111100101 0 1 1 1 1 0 0 1 0 1Oo
[00%] 將上述二進制數據分成高位部分和低位部分,其中低位部分為數據的后20位數 據,高位部分為數據的前10位數據。并且將高位部分的最低一位權重取為1,則低位部分 變?yōu)樾挡糠謾嘀鼐唧w為:2 1 2 2 2 3 2 4 2 5 2 6 2 7 2S2 9 2 1° 2 11 2 口 2 口 2 14 2巧2 16 2 17 2IS2 19 2 2°,高位部分