精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在C/C++算法設計中使用任意位寬

開發 后端 算法
算法天生就適用于操作整數,或那些理想中的實數(如數字濾波器的系數),它們也可能會使用浮點或定點類型。一般而言,在算法開發的早期階段,會經常用到C語言的float或double浮點類型,因為它們可提供一個非常大的動態數據范圍,且對大多數程序來說都是適用的。

開發定點(fixed-point)算法時,通常需要在設計功能性、數字精度建模、及驗證(仿真)速度之間取得一個平衡。現在,一種新的數據類可使此過程簡單化,由此得到更簡單精確的建模精度、更好的數字求精、及更快的驗證周期,而ANSI C/C++正是開發這種數字求精算法的最佳語言。

某此算法天生就適用于操作整數,或那些理想中的實數(如數字濾波器的系數),它們也可能會使用浮點或定點類型。一般而言,在算法開發的早期階段,會經常用到C語言的float或double浮點類型,因為它們可提供一個非常大的動態數據范圍,且對大多數程序來說都是適用的。

使用C內置的float類型來建模一個FIR濾波器

算法可進行數字求精,以便使用定點算術來降低最終硬件或軟件實現的復雜性。在硬件方面,將整數或定點算術限制為最小位寬,可在本質上滿足性能、空間、能耗的需要;如果實現中用到了DSP處理器,那么把算法限制為整數或定點算術,就可為特定程序使用盡可能便宜的處理器。

定點算術的建模可通過C語言內置的浮點或整數類型來完成,這做的話,需要顯式編碼并受限于C中浮點數及整數可表示的最大數:64位整數或53位尾數;這些都會給操作數的位寬帶來更多的限制,例如,2個33位的數相乘,會超過64位C整數可表示的范圍。圖2演示了一個FIR濾波器的例子,但temp變量限制為15位的定點精度,其中10位用于整數位。在這個實現中,LSB的右部位被舍棄(量化模型的截斷),而MSB的左部位也被舍棄(包裝的溢出模型),應該意識到,使用float(或double)的模型在精度上是受限的,且不能再次合成(synthesis)。同樣,由于有取整模型的嚴格位精度定義有先,又由于內置浮點類型的取整將會先被應用,所以對除法這樣的操作來說,就非常難實現了。

使用float建模定點行為

當許多算法都能依賴本地C數據類型的精度來編寫時,對支持任意長度的整數及定點算法,大家就會抱有極大的期望,而硬件描述語言(HDL)如VHDL,走的也是同一條路。隨著C/C++越來越多地被用于高級合成與驗證工具(High-Level Synthesis and Verification tools),也證明了這種語言本質上有一個足以滿足當前及未來程序需要的數據類型庫。任意長度類型的支持,也可使數據類型的行為有一個統一的定義,而統一的語義則避免了人工實現上的一些限制。

算法C數據類型

算法C數據類型是一種基于類的C++庫,其實現了任意長度的整數及定點類型,而這些可自由訪問的類型有一系列好處,包括統一及良好定義的語義,還有媲美C/C++內置數據類型的運行時速度,對比SystemC中相應的類型,其運行速度也超過10倍以上。這些數據類型能用于任何符合C++或SystemC規范標準的程序中,并擁有高度可合成的語義。

語義

語義的統一性與一致性是避免在算法中,發生功能性錯誤的關鍵,以下的例子,也說明了這點:

眾所周知,變量ActLength的范圍為1至255,萬一編譯器的合成不知道其范圍,就不能進行相應的優化,它的聲明就會從int變為更嚴格的sc_uint<8>類型;雖然合成會得到更好的結果,但設計就仿真得不正確了。在經過一番調試之后,找到了問題的源頭:在比較表達式k >= ActLength中,兩個操作數變成了一個signed int與一個unsigned long long(為64位無符號整數,其是sc_uint類型的基類型)之間的比較。對此的解釋是:C/C++整數提升規則指定了在進行比較之前,會把操作數int提升為一個unsigned long long,例如,如果k的值為 -1,在提升為unsigned long long之后,它會變成2^64 – 1。

像這樣語義中的問題一般會非常難以察覺,且是與位寬相關的,例如,可能有人想擴大某個現有算法的位寬,只有看到結果時,才知道是行不通的;這個問題也可能是與特定平臺相關的,例如,對1 << 32(兩個操作數都是int類型,結果也是int類型)大家期望返回0,但在大多數平臺(或編譯器)上,它都會返回1(沒有移位,只因為第二個操作數較低的五位被計算進來了);當第一個操作數是一個64位整數時,平臺依賴性會表現得更加明顯及頻繁。主要的問題是C/C++標準沒有指定在32位整數情況下移位值(第二個操作數)超出0至31范圍、或在64位整數情況下移位值超出0至63范圍時的行為。不幸的是,像sc_int、sc_uint這樣的數據類型也不能為用戶避免這類平臺依賴性的問題。

算法C數據類型被設計用于提供統一且一致的語義,因此,它們是可預測的,例如,對有符號數混用一個無符號操作數仍會產生期望的結果;這些類型的長度不受限制,所以就不存在所謂的精度問題。所有的操作——包括移位和除法——都有完整且一致性的定義,混合不同的類型也能得到期望的結果,如,當x為一個C內置類型,而y是一個算法C類型時,表達式x+y和y+x均能返回相同的結果。

運行時間

我們的目的是為了在支持任意長度類型及避免用戶碰到前述語義問題的前提下,得到使用內置類型(位寬不超過64位)手工C/C++編碼優化過的運行時間。算法C類型是為快速執行及易于合成的語義而設計及實現的,所有操作的位寬由C++編譯器靜態確定,這就避免了動態內存分配,減少了運行時間,也使得語義更加易于合成。另外,實現也為速度進行了優化,因此可能會調用更多的專用及高效代碼,充分利用了當今編譯器的優化特性。

 

表1:規格化為ac_fixed的運行時間比較

表1是當定點算術用算法C定點類型ac_fixed來建模時,各種不同的運行時比較;float的實現在圖2中,sc_fixed_fast為SystemC中精度受限的定點數據類型,sc_fixed為任意精度的定點類型。實際中對FIR濾波器進行10^8次調用,TRN/WRAP的運行時間為6.5秒,RND/SAT為29秒。其他類型的運行時間也能從這張表中依次推出,如sc_fixed TRN/WRAP將花費6.5s × 227 = 1476s(將近25分鐘)。作為參考,圖1中的算法(使用無定點建模的float)花費時間為3.5s(比起使用定點建模的ac_fixed,慢了近兩倍)。

上述的運行時間數據,均由GCC 4.1.1測量得來,而在之前版本的GCC或Visual C++ 2005中得到的數據大致接近。

另外,運行時間也能通過整型數據類型或位操作進一步縮短。表2為一個DCT算法的相應結果,它由一個每次讀寫2位的移位操作得來,與此對比的運行時間為SystemC精度受限的sc_int與任意長度的sc_bigint。

結論

基于通用標準ANSI C++,這種新的整數與定點算法C類型允許算法及系統設計者指定任意位寬,從而提供比傳統數據類型高200倍的仿真效率。這些新數據類型可成為C-to-RTL設計鏈中非常有價值的一環,及在整個實現流程中保證了任意位寬的精度。

【編輯推薦】

  1. 淺談C/C++中的static和extern關鍵字
  2. 淺談C/C++中的順序點和副作用
  3. C++連接mysql數據庫的兩種方法
  4. C++中的指針用法匯集
責任編輯:于鐵 來源: 中國IT實驗室
相關推薦

2012-08-20 10:43:50

IBMdW

2020-03-03 19:00:50

C語言數據科學

2009-04-14 14:53:06

C++Lambda函數多線程

2024-10-14 15:04:15

C++std::any存儲

2011-05-17 16:20:46

C++

2011-03-30 10:41:11

C++數據庫

2016-01-25 15:09:22

JavaScriptC程序

2014-08-01 15:16:05

SwiftC語言

2010-01-26 15:51:06

C++變量

2009-06-18 13:06:59

C#位運算權限管理

2011-05-18 17:56:38

C#C++

2011-05-18 18:05:47

C#C++

2010-01-26 13:36:27

C++設計

2010-01-25 10:54:18

C++設計

2020-07-30 12:40:35

CC++編程語言

2023-09-13 11:51:16

位域C++

2010-02-02 17:08:22

2023-10-30 11:45:44

FridaC++函數

2023-09-26 22:37:16

C++const

2010-01-27 14:00:50

CC++運行環境
點贊
收藏

51CTO技術棧公眾號

精品国产乱码久久久久久蜜坠欲下| 欧美日韩经典丝袜| 久久国产精品区| 欧美猛交免费看| 久久人妻一区二区| 成人在线高清| 亚洲国产毛片aaaaa无费看| 久久av免费一区| 中文字幕一区二区三区人妻四季| 欧美在线二区| 亚洲色图美腿丝袜| 日本亚洲一区二区三区| 亚洲永久av| 亚洲婷婷在线视频| 久久久久久久久久久久久久一区 | 欧美a级在线| 亚洲精品自在久久| 老女人性生活视频| 精品三区视频| 亚洲国产aⅴ天堂久久| 日本免费一区二区三区| 亚洲风情第一页| 日本成人在线一区| 久久久之久亚州精品露出| 欧美黄色高清视频| 女仆av观看一区| 欧美一区在线视频| 男女爽爽爽视频| av免费不卡国产观看| 亚洲欧美在线观看| 欧美成人蜜桃| 神马久久久久久久久久| 国产综合色在线视频区| 日韩av观看网址| 日韩av男人天堂| 亚洲一区二区日韩| 中文字幕综合一区| 亚洲熟妇一区二区三区| 国产精品tv| 日韩一区二区电影| 久久久久久久高清| 国产原创一区| 色国产精品一区在线观看| 青青青青草视频| 国产高清在线a视频大全| 一色桃子久久精品亚洲| 在线观看国产一区| 91社区在线高清| 国产三级欧美三级日产三级99| 精品伦理一区二区三区| 欧美 日韩 综合| 国产99一区视频免费| 国产精品美乳在线观看| 中文字幕 视频一区| 日本色综合中文字幕| 日本久久久久久久| 香蕉污视频在线观看| 久久成人一区| 国产精品久久久av| 中文字幕人妻精品一区| 免费欧美日韩国产三级电影| 国产91ⅴ在线精品免费观看| www成人在线| 丝袜美腿亚洲综合| 国产精品久久久久久久久免费 | 欧美在线你懂的| 一级黄色香蕉视频| 欧美美女被草| 91精品国模一区二区三区| 在线观看免费不卡av| 亚洲伊人伊成久久人综合网| 91精品国产综合久久久久久久久久 | 伊人网综合视频| 欧美韩一区二区| 亚洲欧美国产精品久久久久久久| 尤物视频最新网址| 成人婷婷网色偷偷亚洲男人的天堂| 丝袜美腿亚洲一区二区| 五月天色婷婷丁香| 国产精品v一区二区三区| 欧美激情亚洲精品| 欧美性猛交bbbbb精品| 日韩影院在线观看| 国产在线98福利播放视频| aa视频在线免费观看| 风间由美一区二区三区在线观看| 国产午夜精品在线| 户外极限露出调教在线视频| 国产精品成人一区二区三区夜夜夜| 偷拍盗摄高潮叫床对白清晰| 国精一区二区三区| 日本道在线观看一区二区| 日韩精品视频一二三| 日韩激情综合| 国产午夜精品久久久| 91香蕉视频网| 夜夜嗨网站十八久久| 国产精品久久久久久五月尺| 国产又大又黄的视频| av不卡免费在线观看| 色噜噜一区二区| 伦理av在线| 欧美四级电影网| 中文字幕在线视频播放| 第一会所sis001亚洲| 欧美精品videossex性护士| 波多野结衣爱爱| 国产98色在线|日韩| 日韩电影天堂视频一区二区| 性国产高清在线观看| 在线亚洲+欧美+日本专区| 丰满饥渴老女人hd| 精品高清在线| 98精品国产自产在线观看| 亚洲一区二区激情| 91久色porny| 无颜之月在线看| julia一区二区三区中文字幕| 亚洲成人久久网| 糖心vlog免费在线观看| 午夜一级在线看亚洲| 91成人理论电影| 在线看av的网址| 日本精品免费观看高清观看| 97精品人人妻人人| 欧美激情亚洲| 国产一区二区丝袜高跟鞋图片| 无码国精品一区二区免费蜜桃| 中文字幕一区二区三区在线不卡 | 精品国产免费人成电影在线观看四季| 真实乱视频国产免费观看| 韩国亚洲精品| 亚洲一区免费网站| 香蕉视频在线看| 色婷婷精品久久二区二区蜜臂av| 亚洲一区二区在线免费| 欧美三区视频| 亚洲综合小说区| 黄色网页在线免费看| 欧美综合天天夜夜久久| aaaaaav| 亚洲另类自拍| 国产欧美日韩一区二区三区| 性xxxfreexxxx性欧美| 欧美一区二区高清| 麻豆视频在线免费看| 久久精品国产亚洲高清剧情介绍| 日韩影片在线播放| 亚洲精品在线影院| 亚洲欧美一区二区三区情侣bbw| 日韩黄色精品视频| 成人app下载| av免费观看大全| 国产丝袜一区| 97国产suv精品一区二区62| 亚洲精品中文字幕成人片| 免费污视频在线观看| 亚洲一区二区三区四区中文字幕| 三级黄色片免费看| 一精品久久久| 亚洲自拍欧美另类| 精精国产xxxx视频在线中文版 | 五月婷婷激情久久| 日韩电影免费网站| 成人黄色av网站| 国产日产一区二区| 日韩欧美123| 日本少妇bbwbbw精品| 99精品视频中文字幕| 啊啊啊一区二区| 国产欧美一区| 国产在线精品成人一区二区三区| 免费黄网站在线播放| 欧美成人精精品一区二区频| 五月天综合在线| 91女厕偷拍女厕偷拍高清| 国产无套粉嫩白浆内谢的出处| 欧美精品尤物在线观看| 国产日韩欧美在线| 欧美伦理免费在线| 亚洲免费高清视频| 中文字幕久久久久| 一区二区三区日本| 国产视频久久久久久| 青娱乐精品视频在线| 无码毛片aaa在线| 任你弄精品视频免费观看| 国产精品高潮粉嫩av| 欧美jizzhd69巨大| 亚洲黄色在线看| 老熟妇一区二区三区啪啪| 一区二区三区成人| 三级网站在线免费观看| 国产精品自在在线| 日韩在线综合网| 国产精品成人a在线观看| 国产精品视频福利| 国产精品蜜月aⅴ在线| 久久久久久久久久久人体| 国产原创av在线| 日韩欧美高清一区| 69av视频在线观看| 午夜一区二区三区在线观看| 欧美亚洲色综久久精品国产| 成人午夜在线免费| 亚洲 激情 在线| 99在线观看免费视频精品观看| 亚洲激情电影在线| 丝袜久久网站| 97久久人人超碰caoprom欧美| 成人亚洲欧美| 久久久久久久成人| 拍真实国产伦偷精品| 精品中文视频在线| 亚洲黄色在线观看视频| 欧美日韩精品欧美日韩精品一 | 免费观看在线午夜影视| 日韩精品免费在线视频| 国产色综合视频| 欧美专区日韩专区| 国产精品二区一区二区aⅴ| 国产精品第13页| 中文字幕 自拍| 99re亚洲国产精品| 4438x全国最大成人| 美洲天堂一区二卡三卡四卡视频| 欧美亚洲国产成人| 亚洲黄色av| 欧美日韩中文字幕在线播放| 久久在线播放| 色大师av一区二区三区| 任你躁在线精品免费| 国产伦精品一区二区三区免费视频 | 性感美女一级片| 日韩免费高清av| 国产又粗又猛又黄| 91成人在线精品| 日韩特级黄色片| 亚洲.国产.中文慕字在线| 少妇久久久久久被弄高潮| 亚洲欧洲日韩av| 久草手机视频在线观看| 国产精品色哟哟| 亚洲高潮女人毛茸茸| 国产欧美一区二区三区网站| 色欲av无码一区二区三区| 91色综合久久久久婷婷| 国产成人av无码精品| 91亚洲国产成人精品一区二三| 香蕉久久久久久av成人| 国产999精品久久久久久绿帽| 性色av浪潮av| 国产成人午夜高潮毛片| 香蕉视频1024| 成人免费毛片片v| 国产二级一片内射视频播放| a美女胸又www黄视频久久| 色天使在线视频| 91免费看`日韩一区二区| 老鸭窝一区二区| 久久久精品中文字幕麻豆发布| 国产jk精品白丝av在线观看| 国产婷婷色一区二区三区在线| 久久国产柳州莫菁门| 国产精品沙发午睡系列990531| 久久久久亚洲av无码a片| 国产精品人妖ts系列视频| 国产成人av免费在线观看| 一区二区欧美国产| 久久黄色精品视频| 欧美性淫爽ww久久久久无| 国产一区二区三区黄片| 日韩午夜激情电影| 特黄视频在线观看| 亚洲香蕉伊综合在人在线视看| aaa日本高清在线播放免费观看| 两个人的视频www国产精品| 狂野欧美性猛交xxxxx视频| 91av视频在线播放| 国产亚洲欧美日韩精品一区二区三区 | 日韩电影大全免费观看2023年上 | 2020国产成人综合网| 午夜时刻免费入口| 中文字幕综合网| 日韩成人av毛片| 色www精品视频在线观看| 在线观看黄色国产| 精品国产免费久久| www.亚洲资源| 久久久中精品2020中文| 欧美日韩在线精品一区二区三区激情综合 | 国产精品影音先锋| 精品无码国产一区二区三区51安| 国产欧美日韩精品a在线观看| 日韩va亚洲va欧美va清高| 狠狠躁夜夜躁人人爽天天天天97| 亚洲精品一区二区二区| 精品国产一区二区三区不卡| 国产青青草在线| 久久久噜噜噜久噜久久| 日韩一区精品| 国产在线精品一区二区三区》| 大色综合视频网站在线播放| 成年人午夜视频在线观看| 久热成人在线视频| 黑丝av在线播放| 亚洲精品午夜久久久| 91视频在线视频| 亚洲高清久久网| av毛片在线免费| 国产精品日韩一区| 日韩aaa久久蜜桃av| www.亚洲一区二区| 日韩精品免费视频人成| 国产人成视频在线观看| 中文字幕一区二区三区不卡在线| 青青国产在线观看| 欧美一级理论片| 欧美激情免费| 国产精品极品尤物在线观看 | 亚洲国产成人精品久久久国产成人一区 | 深夜成人福利| 懂色一区二区三区av片 | 日韩精品一区二区三区电影| 久久精品一区二区国产| av天堂一区二区| 亚洲免费电影在线| 伊人影院中文字幕| 亚洲天堂av高清| 国偷自产一区二区免费视频| 国产精品三区在线| 国产精品a久久久久| 欧美精品色视频| 成人免费一区二区三区在线观看| 无码人妻熟妇av又粗又大| 日韩久久免费视频| 国产在线拍揄自揄拍视频| 不卡日韩av| 欧美91视频| 4438x全国最大成人| 亚洲欧洲制服丝袜| 国产精品久久久久久久久毛片 | 国产精品一二| 国产xxxxxxxxx| 午夜精品福利在线| 熟妇人妻av无码一区二区三区| 欧美激情极品视频| 136导航精品福利| 国产xxxx振车| 成年人国产精品| 日韩精品一区二区不卡| 亚洲成人亚洲激情| 蜜桃视频在线观看播放| 精品不卡一区二区三区| 国产欧美另类| 亚洲综合网在线观看| 色婷婷av一区二区三区大白胸| 国产露出视频在线观看| 国产精品网红福利| 天天做天天爱天天综合网| 精品国产鲁一鲁一区二区三区| 亚洲精选在线视频| 亚洲欧美黄色片| 午夜精品久久久久久99热软件| 日韩电影在线观看完整免费观看| 黄色免费观看视频网站| 国产视频一区二区在线| 国产又粗又黄又爽的视频| 欧美另类精品xxxx孕妇| 红杏视频成人| 男人亚洲天堂网| 国产精品不卡一区二区三区| 国产成人精品毛片| 国模极品一区二区三区| 国产精品羞羞答答在线观看| 欧美日韩亚洲自拍| 一区二区在线看| 水莓100在线视频| 国产精品亚洲视频在线观看| 欧美破处大片在线视频| 插吧插吧综合网| 在线成人av网站| 麻豆免费在线| 亚洲一区美女| 成人动漫视频在线| 国内av在线播放| 久久久久久中文| 欧美一级精品片在线看| 免费黄色av网址| 在线亚洲人成电影网站色www| 二区三区四区高清视频在线观看| 国产亚洲福利社区| 久久精品国产99国产精品| 国产精品theporn动漫| 一区二区三区精品99久久| 亚洲精品v亚洲精品v日韩精品| 日本xxxxxxx免费视频| 亚洲精品国产第一综合99久久| 欧美另类自拍| 91在线观看免费高清完整版在线观看|