91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MATLAB浮點(diǎn)數(shù)與定點(diǎn)二進(jìn)制補(bǔ)碼互轉(zhuǎn)算法驗(yàn)證方案

454398 ? 來源:博客園 ? 作者:沒落騎士 ? 2020-10-15 10:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近本人一直在學(xué)習(xí)ZYNQ SOC的使用,目的是應(yīng)對科研需要,做出通用的算法驗(yàn)證平臺。大概思想是:ZYNQ PS端負(fù)責(zé)與MATLAB上位機(jī)數(shù)據(jù)分析與可視化軟件交互:既可傳輸數(shù)據(jù),也能通過上位機(jī)配置更新硬件算法模塊配置寄存器內(nèi)容,同時可計算分析PL端算法實(shí)現(xiàn)性能指標(biāo)。PL端的FPGA邏輯則負(fù)責(zé)算法的硬件實(shí)現(xiàn),以探索高效并行硬件架構(gòu)。為此本人后續(xù)會持續(xù)編寫《利用ZYNQ SOC快速打開算法驗(yàn)證通路》系列專題博文,在各個階段進(jìn)行些基礎(chǔ)性總結(jié)。

MATLAB中數(shù)據(jù)為雙精度浮點(diǎn)型,因此打開算法驗(yàn)證通路的第一步即為MATLAB中浮點(diǎn)數(shù)與定點(diǎn)二進(jìn)制補(bǔ)碼之間的相互轉(zhuǎn)換。在之前的博文:《FPGA與MATLAB數(shù)據(jù)交互高效率驗(yàn)證算法——仿真階段》中提到過兩種數(shù)值表示方式之間的轉(zhuǎn)換,但為了便于testbench仿真,MATLAB寫和讀的文件均為txt文本文件。在算法板級驗(yàn)證中,數(shù)據(jù)應(yīng)以未經(jīng)過ASCII碼編碼的二進(jìn)制數(shù)據(jù)方式被處理。這里涉及到MATLAB函數(shù)fscanf和fprintf以及函數(shù)fread和fwrite的區(qū)別,前兩個分別為讀和寫文本文件,后兩個則是讀寫二進(jìn)制文件。

以下給出浮點(diǎn)定點(diǎn)轉(zhuǎn)換以及讀寫二進(jìn)制文件代碼:

先看下寫出到文件的數(shù)據(jù)和從該該文件讀回的數(shù)據(jù)是否一致。

直接對比數(shù)據(jù)和命令檢測結(jié)果顯示兩者完全一致。再來對比下量化之前與讀回定點(diǎn)數(shù)經(jīng)過類型轉(zhuǎn)換后的浮點(diǎn)數(shù)。

MATLAB顯示兩者的差值??梢娫诟↑c(diǎn)轉(zhuǎn)定點(diǎn)數(shù)時,會有一定的精度損失,但僅在10的負(fù)四次方數(shù)量級,在很多精度要求不高的場合下可以忽略。

現(xiàn)在利用Uedit軟件打開該文件,并以16進(jìn)制方式顯示:

我們用前兩個數(shù)據(jù)做驗(yàn)證,依次是00_38和FF_2A。由于是補(bǔ)碼形式,故先寫成二進(jìn)制形式:0000_0000_0011_1000和1111_1111_0010_1010,再轉(zhuǎn)換為原碼:0000_0000_0011_1000和1000_0000_1101_0110,十進(jìn)制結(jié)果就是56和-240,與MATLAB中數(shù)據(jù)吻合。

非常簡單的東西困擾了我有一陣,希望對大家有幫助吧。因?yàn)樗惴?yàn)證平臺僅是載體,最重要的是PL端的算法硬件實(shí)現(xiàn)部分。為了簡單快速形成算法驗(yàn)證通路,采用網(wǎng)絡(luò)調(diào)試助手和W5500協(xié)議棧芯片實(shí)現(xiàn)MATLAB與ZYNQ之間的數(shù)據(jù)傳輸,從而避免寫上位機(jī)軟件和網(wǎng)絡(luò)協(xié)議先關(guān)設(shè)計配置帶來的工作量。這部分內(nèi)容在下篇博文中敘述。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • matlab
    +關(guān)注

    關(guān)注

    189

    文章

    3025

    瀏覽量

    238764
  • 二進(jìn)制
    +關(guān)注

    關(guān)注

    2

    文章

    809

    瀏覽量

    43048
  • 浮點(diǎn)數(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    62

    瀏覽量

    16421
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    CDx4HC283和CDx4HCT283:高速CMOS邏輯4位二進(jìn)制全加器的詳細(xì)解析

    CDx4HC283和CDx4HCT283:高速CMOS邏輯4位二進(jìn)制全加器的詳細(xì)解析 在電子設(shè)計領(lǐng)域,加法器是數(shù)字電路中最基本的運(yùn)算單元之一,用于實(shí)現(xiàn)二進(jìn)制數(shù)的加法運(yùn)算。今天要給大家介紹
    的頭像 發(fā)表于 01-19 14:50 ?333次閱讀

    深入剖析CD54/74AC283與CD54/74ACT283:高性能4位二進(jìn)制加法器

    /74ACT283這兩款4位二進(jìn)制加法器,它們來自Harris Semiconductor,為電子工程師們提供了高性能、低功耗的解決方案。 文件下載: CD74AC283M.pdf 器件概述 CD54
    的頭像 發(fā)表于 01-04 17:25 ?742次閱讀

    二進(jìn)制查找(Binary Search)介紹

    二進(jìn)制查找(Binary Search)用于在已排序的數(shù)組中執(zhí)行二進(jìn)制查找的函數(shù)。 int binary_search(int arr[], int size, int target
    發(fā)表于 12-12 06:54

    定點(diǎn)數(shù)運(yùn)算案例的程序

    定點(diǎn)數(shù)運(yùn)算(Fixed-Poin Arithmetic)在某些嵌入式系統(tǒng)中,浮點(diǎn)運(yùn)算會較慢或不被支持。因此,使用固定點(diǎn)數(shù)運(yùn)算可以提供一種有效的浮點(diǎn)數(shù)近似解決
    發(fā)表于 12-12 06:35

    使用VScode的PIO開發(fā)GD32VF103,但是串口無法打印浮點(diǎn)數(shù)怎么解決?

    我最近在使用VScode的PIO開發(fā)GD32V,使用的是longan的模板,但是我將串口輸出重定義到printf函數(shù)中,發(fā)現(xiàn)無法使用%f輸出浮點(diǎn)數(shù),想問問應(yīng)該怎么配置,我看到的一種說法是在
    發(fā)表于 11-06 06:49

    定點(diǎn)數(shù)表示實(shí)數(shù)的方法以及定點(diǎn)數(shù)在硬件上的運(yùn)算驗(yàn)證

    看,Q15精度能夠保證15位二進(jìn)制小數(shù)精度,結(jié)構(gòu)上與整數(shù)的表示法類似(也可以表示負(fù)數(shù))。 從結(jié)構(gòu)上來看,浮點(diǎn)數(shù)有這很多定點(diǎn)數(shù)所不具備的優(yōu)勢,例如,數(shù)值范圍廣、相對精度大。但是,浮點(diǎn)數(shù)
    發(fā)表于 10-28 08:13

    浮點(diǎn)指令(三)

    浮點(diǎn)數(shù)轉(zhuǎn)化為 32 位二進(jìn)制補(bǔ)碼表示的整數(shù),再寫入 x[rd]中。由于浮點(diǎn)數(shù)表示范圍遠(yuǎn)遠(yuǎn)大于整數(shù),且浮點(diǎn)數(shù)存在一些特殊表示,比如無窮大和Na
    發(fā)表于 10-24 13:38

    E203添加浮點(diǎn)數(shù)方法:FPU控制邏輯

    指令的全部運(yùn)算都集中在了 FPU 當(dāng)中。對于指令周期的設(shè)計,筆者將除了除法、開方和浮點(diǎn)數(shù)存取指令以外的指令都設(shè)計為單周期指令(實(shí)際中為2周期,原因在于 OITF 的原理),這也是為什么原 E203 代碼
    發(fā)表于 10-24 13:28

    浮點(diǎn)數(shù)是如何實(shí)現(xiàn)開平方運(yùn)算的

    摘要: 本文主要描述浮點(diǎn)數(shù)是如何實(shí)現(xiàn)開平方運(yùn)算的。 簡介 事實(shí)上,浮點(diǎn)數(shù)的開平方運(yùn)算結(jié)構(gòu)與定點(diǎn)數(shù)甚至整數(shù)的開平方運(yùn)算結(jié)構(gòu)是十分相似的,我們可以在對定點(diǎn)數(shù)求平方根運(yùn)算結(jié)構(gòu)的基礎(chǔ)上,針
    發(fā)表于 10-24 08:42

    (九)浮點(diǎn)乘法指令設(shè)計

    浮點(diǎn)乘法算法 設(shè)a = {sa,ea,fa},b = {sb,eb,fb}為兩個IEEE754單精度浮點(diǎn)數(shù),試計算c = {sc,ec,fc} = a b。c的絕對值|c| = |a||b
    發(fā)表于 10-24 07:11

    大彩講堂:VisualHMI-LUA教程-獲取設(shè)置單精度浮點(diǎn)數(shù)函數(shù)的應(yīng)用

    軟件開發(fā)中各種協(xié)議對浮點(diǎn)數(shù)數(shù)據(jù)進(jìn)行獲取和賦值處理。get_float(vtype,addr)讀取單精度浮點(diǎn)數(shù)(float)寄存器,返回有符號單精度浮點(diǎn)數(shù)·vtype:數(shù)
    的頭像 發(fā)表于 10-16 00:00 ?1517次閱讀
    大彩講堂:VisualHMI-LUA教程-獲取設(shè)置單精度<b class='flag-5'>浮點(diǎn)數(shù)</b>函數(shù)的應(yīng)用

    二進(jìn)制數(shù)據(jù)處理方法分享

    時,我們?nèi)绾稳ソ馕鰯?shù)據(jù)并且應(yīng)用它們。本次的技術(shù)分享文章,我們就從如何傳輸數(shù)據(jù)和解析二進(jìn)制數(shù)據(jù)來一步一步剝絲抽繭,搞清楚他的運(yùn)作原理和二進(jìn)制數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。
    的頭像 發(fā)表于 07-30 15:41 ?2432次閱讀
    <b class='flag-5'>二進(jìn)制</b>數(shù)據(jù)處理方法分享

    FPGA定點(diǎn)浮點(diǎn)數(shù)學(xué)運(yùn)算實(shí)例對比

    在創(chuàng)建 RTL 示例時,經(jīng)常使用 VHDL 2008 附帶的 VHDL 包。它提供了出色的功能,可以高效地處理定點(diǎn)數(shù),當(dāng)然,它們也是可綜合的。該包的一些優(yōu)點(diǎn)包括:
    的頭像 發(fā)表于 06-23 09:53 ?1036次閱讀
    FPGA<b class='flag-5'>定點(diǎn)</b>和<b class='flag-5'>浮點(diǎn)數(shù)</b>學(xué)運(yùn)算實(shí)例對比

    PRINTF函數(shù)無法打印出浮點(diǎn)數(shù)內(nèi)容是為什么?

    1、MCXN947低功耗adc,歷程中使用官方提供的PRINTF無法打印出浮點(diǎn)數(shù)內(nèi)容。 2、同樣在mcuxpresso ide 也不可以打印浮點(diǎn)數(shù),這是為什么呢? 3、使用的歷程是lpadc歷程。
    發(fā)表于 03-20 08:06

    如何使用Keil將二進(jìn)制文件加載到外部SPI Flash中?

    我想知道是否有辦法使用 Keil 將隨機(jī)二進(jìn)制文件加載到外部 SPI 閃存中。二進(jìn)制文件將通過 LPC54102(OM13077 EVK 板)。我知道一些用于 FPGA 的 ISE 允許您執(zhí)行此作
    發(fā)表于 03-17 06:37