• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      在計算機中實現(xiàn)三角函數(shù)的硬件解算方法

      2017-12-15 02:32:16,,
      計算機測量與控制 2017年11期
      關(guān)鍵詞:余弦正弦芯片

      ,,

      (中船重工716研究所,江蘇 連云港 222006)

      在計算機中實現(xiàn)三角函數(shù)的硬件解算方法

      袁岐川,龍瑋潔,李建峰

      (中船重工716研究所,江蘇連云港222006)

      針對目標跟蹤中大量存在的三角函數(shù)運算,提出在火控計算機中建立三角函數(shù)解算單元,采用硬件實現(xiàn)三角函數(shù)解算的設(shè)想;而三角函數(shù)解算單元是一種可以完成正弦函數(shù)解算功能的函數(shù)芯片;它的設(shè)計核心是以角度值為地址,通過硬件查表計算,可對0到90度的正弦函數(shù)值進行查表;查表精度可設(shè)計到0.001°,最大查表時間即為函數(shù)值的解算時間;余弦查表計算是采用正弦同一芯片,可以根據(jù)相位差90度的關(guān)系進行查表;實踐表明三角函數(shù)的硬件解算速度快,精度高,可以替代通常方法的函數(shù)解算;因此,如果在火控系統(tǒng)中,設(shè)計一個地址譯碼器電路,就可建立多個三角函數(shù)芯片解算單元,通過計算機數(shù)據(jù)指令,實現(xiàn)對多個三角函數(shù)值的并行計算,從而提高系統(tǒng)對多個目標的快速跟蹤處理能力。

      三角函數(shù); 正弦算法; 芯片設(shè)計; 火控計算機

      0 引言

      火控計算機中如何加快三角函數(shù)的解算是跟蹤處理大批目標的關(guān)鍵,建立三角函數(shù)解算單元,是實現(xiàn)三角函數(shù)硬件解算的最簡單方法,它不同于火控計算機中為解決三角函數(shù)運算所采用的以DSP芯片為主的函數(shù)處理系統(tǒng),這里所說的三角函數(shù)解算單元是一個具有獨立功能的芯片,使用時只要給出函數(shù)值的地址,計算機無需參與函數(shù)的解算過程,芯片就能獨立完成函數(shù)的解算任務,這是其它方法處理函數(shù)無法比的。創(chuàng)建硬件解算三角函數(shù)的思想,源自采用軟件查表計算正弦sin(ωτ)和余弦cos(ωτ)函數(shù)的方法,它能顯著提高三角函數(shù)的解算過程。在軟件查表過程中,把函數(shù)值由小到大按順序排列,根據(jù)函數(shù)值設(shè)計相應的地址,當計算某一函數(shù)值時,只要計算出函數(shù)值的地址就可獲得其函數(shù)值,這是軟件查表解算三角函數(shù)的方法。如果將軟件查表實現(xiàn)三角函數(shù)的解算變?yōu)橛布楸韺崿F(xiàn),無疑將極大提高三角函數(shù)的解算速度,這就需要建立獨立的三角函數(shù)解算芯片,幸運的是我們在工作中對三角函數(shù)解算的硬件實現(xiàn),找到了簡單實現(xiàn)的方法。

      關(guān)于三角函數(shù)的硬件解算有沒有現(xiàn)成的芯片,在學術(shù)層面上還沒有見到報道,國外有可能限于軍事性質(zhì)已有,但不便公開。因此,我們研究三角函數(shù)硬件解算意義重大,越快越好。

      我們知道在火控系統(tǒng)跟蹤中,每一個跟蹤目標都有大量的正弦、余弦函數(shù)運算,而函數(shù)運算在計算機中是采用泰勒級數(shù)方法求取的,極其費時,將函數(shù)的軟件查表法通過硬件查表實現(xiàn),從而取代目標運動參數(shù)中函數(shù)的解算,這是我們的目的。

      1 三角函數(shù)解算單元的建立

      1.1 芯片功能

      要求三角函數(shù)解算單元芯片,只需給出函數(shù)值的地址,芯片就能自動獲取該角度的函數(shù)值來。芯片完成操作,只用兩條指令,寫指令負責將角度值送到芯片端口去,然后芯片進行函數(shù)值的查表計算,再由讀指令負責將轉(zhuǎn)換完的函數(shù)值讀取到計算機的累加器A中。函數(shù)的地址,由計算機根據(jù)所求角度計算??蓪?到90度的自由變量進行正弦函數(shù)求解,查表精度為0.001°。如果精度要求高,也可設(shè)置的再高一些。

      1.2 芯片原理

      具有三角函數(shù)解算的芯片由EPROM和地址譯碼器組成,EPROM可寫入0°到90°的正弦數(shù)據(jù)表,地址譯碼器負責函數(shù)值地址單元的選擇。正弦數(shù)據(jù)表是利用計算機程序求出0到90度,步進間隔0.001°的90 000個正弦函數(shù)值,再將每一步的函數(shù)值乘以2的16次方(字長16位)所獲得的二進制數(shù),按順序由小到大排列成的數(shù)據(jù)表。函數(shù)值在EPROM中的地址是以角度值乘以1 000而設(shè)計的,因此,每0.001°存放一個單元(字長為十六位),一個單元只存放一個二進制表示的函數(shù)值。這樣0度到90度共占90 000個單元。所以,0度的函數(shù)值0000H在地址0H, 90度的函數(shù)值FFFFH的地址在90000,化為十六進制15F90H。見表1。

      表1 EPROM中數(shù)據(jù)排放

      芯片中的EPROM設(shè)計,如圖1所示,存儲器芯片內(nèi)部有128 K個16位的存儲單元,即存儲容量為128 K×16位,有17根地址線,16根數(shù)據(jù)線,讀/寫控制線,片選線等。

      圖1 正弦函數(shù)芯片

      每一個存儲器芯片內(nèi)部的存儲單元都有2個地址,一個是芯片內(nèi)部地址,一個是系統(tǒng)地址。內(nèi)部地址是與外部連線無關(guān)的,每一個芯片內(nèi)部地址范圍都是從0000H~20000H。而系統(tǒng)地址取決于外部連線芯片中的譯碼器設(shè)計用17位地址線通過內(nèi)部譯碼器選擇存儲單元。地址范圍在00000H~20000H,實際使用范圍是0000H~15F90H。

      1.3 函數(shù)值的查表方法

      將所求的正弦函數(shù)的自變量乘以1 000,就是該函數(shù)自變量的函數(shù)值的地址,由于每個函數(shù)值占一個單元,字長十六位,芯片的地址范圍00000~15F90。

      例如求取30°的函數(shù)值,先計算自變量30°的地址,方法是:把30乘以1 000,等于30 000,化為十六進制:7530H,即自變量30度的EPROMDE 的地址。通過寫指令將地址7530H送到芯片端口,芯片就可根據(jù)地址獲取7530H中的內(nèi)容:8000H,即30°的函數(shù)值。然后,再由讀指令讀取芯片中的函數(shù)值到累加器A中。

      1.4 三角函數(shù)單元芯片的驗證

      為了驗證三角函數(shù)單元芯片中數(shù)據(jù)的正確性,我們將芯片中的數(shù)據(jù)讀出,以正弦曲線表示。為此,我們從芯片中取數(shù)據(jù),設(shè)計正弦周期長20秒,每間隔2.5毫秒取一個點,共取8 000個點,繪制一條正弦曲線圖。由圖的運動軌跡看以芯片中的數(shù)據(jù)做出的曲線符合正弦規(guī)律,數(shù)據(jù)在4個象限的曲線非常平滑,表明EPROM中的數(shù)據(jù)是正確的,正弦查表計算是可行的。這里給出的正弦曲線只是設(shè)計的一種情況,其它情況也可得到驗證。需要說明的是,正弦芯片中數(shù)據(jù)的逐點驗證,需要圖形較大不便在論文中表示。

      圖2 根據(jù)正弦芯片中的數(shù)據(jù)所作的正弦曲線

      1.5 硬件查表計算的速度比較

      快速算法(軟件查表法)在搖擺信號發(fā)生器中得到應用,對于三角函數(shù)的正弦芯片設(shè)計,人們想知道它的速度如何,為此,我們通過計算機編程實驗,列出常用的正弦函數(shù)調(diào)用法與快速算法和硬件查表法三著差異。表格中的數(shù)據(jù),說明它們之間的速度關(guān)系:

      這是在不限定機型條件下的獲取的數(shù)據(jù)。可以說明,無論什么條件下,硬件查表速度最快。

      表3 3種算法比較

      有關(guān)正弦函數(shù)芯片的設(shè)計,完全可以依據(jù)函數(shù)的快速算法來實現(xiàn)。我們把單片機的功能劃分為相位累加器,相位寄存器,加法器,地址寄存器、比較器、控制器等幾個部分,加上存儲器,相關(guān)的集成電路制造商即可根據(jù)功能進行設(shè)計和制造。有了這樣功能的芯片,函數(shù)解算時,計算機只需給芯片一個輸入值,芯片就可以在十幾個納秒內(nèi),給出函數(shù)值。如果把這個函數(shù)芯片,應用到火控計算機中的公式解算,那么,公式中頻繁的正弦余弦函數(shù)運算被函數(shù)芯片取代,計算機就會節(jié)省到大量的時間,火控計算機就有充分的時間對幾百個運動目標實現(xiàn)跟蹤和解算。

      2 導致火控系統(tǒng)采用函數(shù)芯片重建

      有了三角函數(shù)的快速解算方法,火控系統(tǒng)中關(guān)于函數(shù)的運算就應重新設(shè)計。把大量的sin(β),cos(ε)正弦、余弦函數(shù)運算從計算機中分離出來,建立以正弦三角函數(shù)單元為計算單元的函數(shù)處理系統(tǒng)。這里,余弦的算法,無需另外設(shè)計,由于它們相位相差是90度,正弦數(shù)據(jù)表的反向就是是余弦,即余弦的0°值是正弦的90°值,正弦余弦可以合用一種芯片,取值方法是:一個由0到90°,而另一個則由90到0°。

      怎樣重建,應該根據(jù)跟蹤系統(tǒng)的要求,在系統(tǒng)中設(shè)計合理的三角函數(shù)解算單元陣列。

      2.1 跟蹤系統(tǒng)要求

      目前,發(fā)達國家的火控處理系統(tǒng)可以同時跟蹤處理400多個目標,我們應該以這個為目標設(shè)計我們的目標跟蹤處理系統(tǒng)。從目標跟蹤處理的過程看,火控計算機的任務大致歸結(jié)為四點:確定目標現(xiàn)在點,求取目標運動參數(shù),計算目標提前點坐標(解命中),求取射擊諸元。 見公式(1),(2),(3),(4),這些運算包含了大量的正弦和余弦函數(shù)的運算。

      (1)

      目標運動參數(shù)公式:

      (2)

      相對運動情況下求取目標運動參數(shù)公式。

      計算提前點坐標:

      (3)

      加了各種修正量后目標運動參數(shù)求解。

      其中:

      (4)

      從目標計算的公式可見,正弦、余弦函數(shù)參與的運算很多,這里如果采用三角函數(shù)單元解算,通過硬件實現(xiàn)三角函數(shù)就可以加快函數(shù)的計算過程。我們可以根據(jù)系統(tǒng)的技術(shù)指標,建立多個三角函數(shù)解算單元,每一個單元負責一個正弦或余弦三角函數(shù)的解算,在計算機系統(tǒng)中建立8或16個三角函數(shù)解算單元,就可實現(xiàn)多個目標跟蹤的快速處理。

      2.2 硬件電路設(shè)計

      為了加快三角函數(shù)的解算,在系統(tǒng)中設(shè)計8到16個三角函數(shù)單元進行正弦、余弦函數(shù)的解算,為此,在系統(tǒng)中設(shè)計一個譯碼器電路,用于計算機指定某一個三角函數(shù)單元(正弦芯片單元)進行三角函數(shù)計算,見圖3 ,三角函數(shù)解算單元的選擇電路圖。

      圖3 譯碼器選擇其中一個三角函數(shù)單元的線路

      有了多個三角函數(shù)解算單元,它們就可以同時進行多個正弦函數(shù)的解算,實現(xiàn)對多個目標的跟蹤。

      2.3 函數(shù)解算單元陣列對系統(tǒng)會不會產(chǎn)生影響

      在系統(tǒng)中增加三角函數(shù)單元解算正弦和余弦函數(shù),不會產(chǎn)生其它影響,因為函數(shù)解算單元是獨立的芯片,它通過譯碼器電路進行選擇,地址設(shè)計選擇計算機中可用字段,陣列中的芯片被選中后,獨立工作,互不影響,計算機與正弦芯片是并行工作狀態(tài)。

      2.4 在目標跟蹤時三角函數(shù)解算單元的應用

      如果火控系統(tǒng)進行目標跟蹤,假定現(xiàn)在火控系統(tǒng)進行速度分量的解算,見計算公式(5):

      ωβDsinε·sinβ+ωβDcosε·cosβ

      ωβDsinε·cosβ-ωβDcosε·sinβ

      (5)

      我們可以根據(jù)公式(5),將需計算的sin(ε),sin(β),cos(β)和cos(ε)4個函數(shù)值,分別指定4個三角函數(shù)單元解算,方法是:先把正弦的自變量β,ε換算成相應的地址,再把這個地址送到指定芯片上。然后,再由讀指令即可獲得該自變量β和ε的函數(shù)值。為了方便說明,這里假設(shè)β等于30°,ε等于45°,根據(jù)上述地址換算公式,可得它們的函數(shù)地址分別是30 000和45 000,以十六進制數(shù)表示為:7530H和AFC8H,余弦的地址是EA60H和 AFC8H,再用寫指令將這些地址分別指定給4個正弦芯片,就可解算出正弦30度和45度,余弦30度和45度的函數(shù)值。顯然,正弦芯片的工作是與計算機CPU并行的。因為,正弦芯片在自行解算函數(shù)值的同時,它不占用CPU,這時,計算機可進行其它工作,這樣就加快了目標跟蹤中三角函數(shù)的解算,所以,速度分量vx,vy,vH的計算CPU只需完成加減乘的計算,復雜的函數(shù)計算無需參加。

      3 從而使火控系統(tǒng)可快速跟蹤解算更多目標

      由于三角函數(shù)解算單元可以快速的解算三角函數(shù)值,這就使目標解算過程中求解三角函數(shù)的計算耗時極短,如果在系統(tǒng)中設(shè)立多個三角函數(shù)單元,使它們各自獨立工作,我們就可實現(xiàn)對多個跟蹤目標的處理,三角函數(shù)解算單元越多,目標跟蹤的數(shù)量就可大大增加,

      4 結(jié)束語

      在火控計算機中采用硬件解算三角函數(shù),實現(xiàn)正弦、余弦函數(shù)的快速解算,目的是加快三角函數(shù)的解算,提高火控計算機的處理能力。雖然只是設(shè)想,但實踐表明,這是實現(xiàn)三角函數(shù)解算的最簡單方法和途徑。今后的研究方向是直接在內(nèi)存中開辟一段儲存區(qū),把正弦函數(shù)值依順序排列在存儲區(qū)中,解算三角函數(shù)值時,由讀指令根據(jù)函數(shù)值的地址直接從這段存儲存區(qū)(EPPROM)中讀取函數(shù)值,這樣三角函數(shù)解算就只需一條讀指令即可完成。這實際上是在火控系統(tǒng)中建立了一個函數(shù)解算單元,遇到函數(shù)解算就用這個函數(shù)解算單元進行處理。我們認識到火控系統(tǒng)的創(chuàng)新應該從正弦函數(shù)解算的方法上入手,改進正弦的算法才是出路。不然,火控系統(tǒng)的計算僅依靠計算機處理,大家就都處在同一水平,誰也難有超越對方的可能。這一算法不僅在目標跟蹤中有顯著意義,實際凡是用到三角函數(shù)解算的地方都有用,特別是在潛艇水下目標監(jiān)聽和識別,也大量存在三角函數(shù)的解算,這里更應該使用這一算法,以提高潛艇早期發(fā)現(xiàn)早期識別目標的能力。

      [1] 袁岐川,袁 野.新型指揮儀模擬器的分析與研究[A].中國計算機自動測量與控制技術(shù)協(xié)會[C].第二十屆全國測試與故障診斷技術(shù)研論文集,2011.

      [2] 袁岐川,康建斌. 一種面向查表方式的正弦函數(shù)快速算法及應用[A]. Edited by Prof.Yong JIANG,Dr.Kai Liu,Second International Conference on Information and Computing Science (ICIC2009) Volume 5[C].英國·曼徹斯特大學,World Academic Union,2009,5:103-107.

      [3] 董志榮.指控系統(tǒng)發(fā)展的哲學視野[J].指揮控制與仿真,2008(4):1-5.

      [4] 董志榮.目標運動分析新論[Z].連云港 :江蘇自動化研究所,2005.

      AHardwareSolutionMethodofTrigonometricFunctioninComputer

      Yuan Qichuan, Long Weijie, Li Jianfeng

      (CSIC 716 Research Institute, Lianyungang 222006,China)

      Aiming at the existence of target tracking in a large number of trigonometric function calculations, puts forward to establish trigonometric functions in the fire control computer calculating unit, trigonometric function is realized by using hardware decoding. And trigonometric function calculating unit is a kind of sine function calculating chip. Its core design is based on Angle value address, through hardware look-up table, Value of 0 to 90 degrees of sine function, look-up table. Table look up precision can design to 0.001°, maximum look-up table time is the function of calculating time. Look-up table of time is the biggest function value calculation of time. Cosine look-up table calculation is to use sine the same chip, can look up table according to the relationship between phase difference of 90 degrees. Practice shows that trigonometric function of hardware decoding speed fast, high precision, the common method of the function calculating can be replaced. So, if in the fire control system, design an address decoder circuit, can create multiple trigonometric function calculating unit chip, Through computer data, instructions, the realization of parallel computing for multiple trigonometric function value, thus improve the system of multiple target fast track processing capacity.

      trigonometric functions; sine algorithm; chip design; fire control computer

      2017-04-05;

      2017-05-15。

      袁岐川(1958-),四川名山人,高級工程師,主要從事計算機檢測與虛擬儀器技術(shù)的應用開發(fā)方向的研究。

      1671-4598(2017)11-0120-03

      10.16526/j.cnki.11-4762/tp.2017.11.031

      TP274

      A

      猜你喜歡
      余弦正弦芯片
      例說正弦定理的七大應用
      正弦、余弦定理的應用
      “美”在二倍角正弦公式中的應用
      兩個含余弦函數(shù)的三角母不等式及其推論
      芯片測試
      多通道采樣芯片ADS8556在光伏并網(wǎng)中的應用
      分數(shù)階余弦變換的卷積定理
      圖像壓縮感知在分數(shù)階Fourier域、分數(shù)階余弦域的性能比較
      基于VSG的正弦鎖定技術(shù)研究
      離散余弦小波包變換及語音信號壓縮感知
      惠安县| 米泉市| 华安县| 陆河县| 大埔区| 新密市| 临漳县| 孝义市| 麻江县| 孙吴县| 平顶山市| 探索| 安达市| 麟游县| 桦南县| 天津市| 锡林浩特市| 贵港市| 施甸县| 唐山市| 彰武县| 鄄城县| 永州市| 天全县| 富平县| 乌鲁木齐市| 林西县| 溧阳市| 邵武市| 璧山县| 康平县| 临桂县| 遂宁市| 柳江县| 沙洋县| 宣化县| 贡觉县| 武鸣县| 永春县| 鹤山市| 诏安县|