新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 用電路實現pascal三角形運算

        用電路實現pascal三角形運算

        作者: 時間:2011-06-06 來源:網絡 收藏

        Pascal,即(a-b)n展開項系數,是一個經典的數學問題,然而它在通信、頻率補償、版圖布局布線優化等很多方面都有廣泛的應用。在一個小數分頻項目中,需要構建一個四級的來進行相位補償,如圖1所示,第二個累加器的溢出必須通過第一個微分控制分頻比,第三個累加器的溢出必須通過第二個微分控制分頻比,依此類推。第二個累加器使分頻比變為N+1、N-1,第三個累加器將分頻比變為N+1、N-2、N+1,第四個累加器的分頻比序列為N+1、N-3、N+3、N-1,正如圖2所示該序列構成一個,每行的總和為零。依照這個規律可以設計 三角形的通用

        Pascal三角形的數學描述
          pascal三角形通常用三角形的方式來表示,如圖2所示,也可以用一個二維的下三角矩陣來描述,如圖3所示。
          矩陣a[n,n]可以用下面的公式來描述。
          a[i, j]=a[i, j-1]+(-1)a[i+1, j] (式1)
          (a[n, 1]=0,a[n, 2]=a[n, 3]=...=a[n, n]=1)
          i≥1,j≥2。
          矩陣中第一列的0是為了方便而人為加上去的。將此二維矩陣表達式(即式1)變成含有時間的一維方程。
          a[i]j=a[i]j-1+(-1)a[i+1]j (式2)
          i,j均大于1,a[n]2 =a[n]3=...a[n]n=1。下標表示時間,a[n,1]=0表示剛開始整個的清零信號,其余第一列的0表示對應pascal三角形的和為0,最后一行的1表示pascal三角形每一行對應的輸入端有輸入值1時,產生的立即數為1。
          此外,式2具有疊加性,可以把pascal三角形中的一行加上其余任意一行或者幾行,任意時鐘周期的延時。

        本文引用地址:http://www.104case.com/article/150630.htm


        Pascal三角形的基本電路

          根據上面一維含時公式,先要構建補碼電路,然后是一個加法電路,最后是一個延時電路。
          假設一個數組a[n:0]表示數的各位,a[0]為最低位,對各位取反,然后最低位加1,得到一個新的數組b[n:0],這個數組最低位為b[0],對應的邏輯關系是:

          其余位按照這個規律依此類推,邏輯圖如圖4所示。
          采用通用的全加器,邏輯表達式為:


          示意圖參見圖5。其中CI為上一級的進位,A、B為本級輸入信號,S為全加和,CO是本級進位。
          延時器采用帶清零的D觸發器來實現,見圖6。CLOCK為時鐘信號,CLEAR為清零信號,D是數據輸入信號,Q是原量輸出

                

        DIY機械鍵盤相關社區:機械鍵盤DIY



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长葛市| 九江市| 兴文县| 陕西省| 潮安县| 西丰县| 凭祥市| 呼和浩特市| 玉环县| 宁乡县| 长顺县| 济阳县| 汨罗市| 中卫市| 游戏| 阿克陶县| 峨边| 涿鹿县| 铁岭县| 积石山| 盐津县| 化州市| 阜南县| 新竹市| 雷州市| 岳西县| 平凉市| 溆浦县| 大同县| 长顺县| 洪泽县| 延长县| 长海县| 兴业县| 张北县| 土默特右旗| 云安县| 贵南县| 河北省| 喀喇沁旗| 舞钢市|