色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣使用毛刺濾波器來濾除毛刺和反彈?

OpenFPGA ? 來源:OpenFPGA ? 2023-08-30 10:24 ? 次閱讀

編程邏輯系統通常部署在可能存在噪聲的應用中。這種噪聲會影響可編程邏輯設計接收的信號。例如,它可能會導致信號故障或跳動,如果處理不當,可能會導致設計和操作出現問題。

f4a9cb24-46db-11ee-a2ef-92fbcf53809c.png

毛刺的持續時間是隨機的,并且與時鐘沿不同步。因此,它們可能會導致下游信息損壞。

處理此問題的最常見方法是使用毛刺濾波器來濾除毛刺和反彈。

毛刺濾波器核心是使用長度可變的移位寄存器,噪聲信號被放到寄存器中,直到移位寄存器的所有值都一致。此時,信號可以視為穩定。當然,我們必須確定潛在毛刺和反彈可能持續多長時間,以確保時鐘周期的寄存器大小正確。這就是為什么我們的毛刺濾波器需要非常靈活,并且需要確保其大小能夠適合每個應用程序的要求。

濾波器應該能夠接收噪聲輸入并濾除持續時間為多個時鐘脈沖的毛刺。

f4e60832-46db-11ee-a2ef-92fbcf53809c.png

libraryieee;
useieee.std_logic_1164.all;
useieee.numeric_std.all;

entityglitch_filteris
generic(
G_FILER_LEN:integer:=8
);
port(
i_clk:instd_ulogic;
i_noisy:instd_ulogic;
o_clean:outstd_ulogic
);
endglitch_filter;

architecturebehaviourofglitch_filteris

signals_delay_line:std_ulogic_vector(G_FILER_LEN-1downto0);
signals_delay_and:std_ulogic;
signals_delay_nor:std_ulogic;
signals_output_clean:std_ulogic;

begin

o_clean<=?s_output_clean;

????--Delay?disctete?using?delay?line
????synchroniser_process?:?process?(i_clk)?begin
????????if?rising_edge(i_clk)?then
????????????s_delay_line?<=?s_delay_line(G_FILER_LEN?-?2?downto?0)?&?
????????????????????????????i_noisy;
????????end?if;
????end?process;

????--Generate?AND?and?NOR?of?delay?line?bits
????s_delay_and?<=?'1'?when?to_01(s_delay_line)?=?
????????????????????????????(s_delay_line'range?=>'1')else'0';
s_delay_nor<=?'1'?when?to_01(s_delay_line)?=?
????????????????????????????(s_delay_line'range?=>'0')else'0';

--Setdiscretebasedondelayline
output_process:process(i_clk)begin
ifrising_edge(i_clk)then
ifs_delay_nor='1'then
s_output_clean<=?'0';
????????????elsif?s_delay_and?=?'1'?then
????????????????s_output_clean?<=?'1';
????????????end?if;
????????end?if;
????end?process;

end?behaviour;

為了測試這個模塊,創建一個簡單的測試文件,它將隨機數量的毛刺注入信號中。在信號改變狀態后,許多隨機毛刺被輸入到信號中。如果濾波器運行正常,則這些毛刺將在毛刺濾波器輸出干凈的信號。

libraryieee;
useieee.std_logic_1164.all;
useieee.numeric_std.all;
useieee.math_real.all;

entityglitch_filter_tbis
end;

architecturebenchofglitch_filter_tbis

componentglitch_filter
generic(
G_FILER_LEN:integer
);
port(
i_clk:instd_ulogic;
i_noisy:instd_ulogic;
o_clean:outstd_ulogic
);
endcomponent;

--Clockperiod
constantclk_period:time:=10ns;
--Generics
constantG_FILER_LEN:integer:=8;

--Ports
signali_clk:std_ulogic:='0';
signali_noisy:std_ulogic;
signalo_clean:std_ulogic;

begin

i_clk<=?not?i_clk?after?(clk_period/2);

??glitch_filter_inst?:?glitch_filter
????generic?map?(
??????G_FILER_LEN?=>G_FILER_LEN
)
portmap(
i_clk=>i_clk,
i_noisy=>i_noisy,
o_clean=>o_clean
);

uut:process

variableglitch_duration:integer;
variableseed1:positive:=1;
variableseed2:positive:=283647823;

impurefunctioninteger_random(min,max:integer)returnintegeris
variablerandom:real;
begin
uniform(seed1,seed2,random);
returninteger(round(random*real(max-min)+real(min)));
endfunction;

begin
i_noisy<=?'0';
????wait?until?rising_edge(i_clk);
????wait?for?G_FILER_LEN?*?clk_period;
????test:?for?i?in?0?to?1?loop
????????i_noisy?<=?'1';
????????wait?until?rising_edge(i_clk);
????????glitch_duration?:=?integer_random(1,5);
????????for?x?in?0?to?glitch_duration?loop
????????????i_noisy?<=?not?i_noisy;
????????????wait?until?rising_edge(i_clk);
????????end?loop;
????????i_noisy?<=?'1';
????????wait?for?20?*?clk_period;
????????report?"loop?high?completed"?severity?note;
????????i_noisy?<=?'0';
????????wait?until?rising_edge(i_clk);
????????glitch_duration?:=?integer_random(1,5);
????????for?x?in?0?to?glitch_duration?loop
????????????i_noisy?<=?not?i_noisy;
????????????wait?until?rising_edge(i_clk);
????????end?loop;
????????i_noisy?<=?'0';
????????wait?for?20?*?clk_period;
????????report?"loop?low?completed"?severity?note;
????end?loop;
????report?"Simulation?complete"?severity?failure;
????
end?process;

end;
f4fea07c-46db-11ee-a2ef-92fbcf53809c.png

運行仿真后顯示在信號狀態改變后隨機數量的脈沖便增加。檢查輸出信號表明濾波器已正確濾除輸入信號中可能存在的毛刺。

正如在一開始所說的,這樣的濾波器對于部署在可能存在電噪聲的環境中非常有用。與 BRAM 上的 EDAC 等其他緩解策略相結合,這是可用于實現設計彈性的關鍵方法之一。






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 濾波器
    +關注

    關注

    161

    文章

    7805

    瀏覽量

    178060
  • 寄存器
    +關注

    關注

    31

    文章

    5342

    瀏覽量

    120297
  • 狀態機
    +關注

    關注

    2

    文章

    492

    瀏覽量

    27538
  • BRAM
    +關注

    關注

    0

    文章

    41

    瀏覽量

    10963
  • 時鐘脈沖
    +關注

    關注

    0

    文章

    19

    瀏覽量

    12685

原文標題:【數字實驗室】消除毛刺

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    TPA3110D2無信號輸入時,輸出336kHZ的正弦波信號有明顯的毛刺,如何濾除毛刺

    采用TPA3110D2設計的功放板,無信號輸入時,輸出336kHZ的正弦波信號,有明顯的毛刺,可否有辦法濾除毛刺?該正弦信號雖然人的耳朵聽不到,可否濾除掉?
    發表于 11-04 06:58

    波形濾除毛刺

    rt我的波形如下圖所示,想用硬件把毛刺去除掉,請問各路大神原理圖怎么設計謝謝·~~
    發表于 04-11 22:08

    引入輸入濾波器濾除噪聲設計

    會在輸入電容上產生電壓紋波,從而增加EMI。因此,有必要采用一些其他方法提高傳導EMI的性能。本文主要討論的是引入輸入濾波器濾除噪聲,或增加屏蔽罩
    發表于 07-05 09:52

    毛刺濾波方法

    ,放大毛刺后如圖2所示,大約維持10ns的高電平。圖1圖2如何濾除這些毛刺呢?辦法有兩個,其一就是用純粹硬件的辦法,在信號進入FPGA之前進行濾波處理,串個電阻并個電容都可以,特權同學
    發表于 06-04 05:00

    怎樣去設計一個使用時序邏輯對單bit信號進行毛刺濾除操作的電路

    什么是邊沿檢測計數法?怎樣去設計一個使用時序邏輯對單bit信號進行毛刺濾除操作的電路?怎樣用verilog寫出其代碼?
    發表于 08-19 06:53

    FPGA | 競爭冒險和毛刺問題

    產生的條件,減少毛刺的發生。例如,在數字電路設計中,常常采用格雷碼計數取代普通的二進制計數,這是因為格雷碼計數的輸出每次只有一位跳變
    發表于 11-02 17:22

    電路從SDA和SCL線路中濾除毛刺的解決方法及過程

    I2C 控制規范 v2.1 規定了濾除快速工作模式下 SDA 和 SCL 線路上最大間距為 50ns 的毛刺。 Zynq-7000 AP SoCs PS7 中的 I2C 控制沒有實
    的頭像 發表于 06-29 14:00 ?1.9w次閱讀

    FPGA中的冒險現象和如何處理毛刺

    通過改變設計,破壞毛刺產生的條件,減少毛刺的發生。例如,在數字電路設計中,常常采用格雷碼計數取代普通的二進制計數,這是因為格雷碼計數
    發表于 06-23 08:49 ?1827次閱讀
    FPGA中的冒險現象和如何處理<b class='flag-5'>毛刺</b>

    電感的毛刺現象是什么意思?如何解決感應毛刺

    毛刺現象是我們每一個電子愛好者避之唯恐不及的,今天我們學習一個毛刺現象以及如何規避它,進而掌握電感升壓的原理。
    的頭像 發表于 08-15 14:53 ?4150次閱讀
    電感的<b class='flag-5'>毛刺</b>現象是什么意思?如何解決感應<b class='flag-5'>毛刺</b>?

    在 FlexIO上進行毛刺濾波的方法

    會由于毛刺的存在,導致錯誤數據被接收。 對于這種情況,可以使用額外的定時設計一個毛刺濾波器,以避免錯誤的發生。 使用定時 進行
    的頭像 發表于 10-19 11:25 ?1018次閱讀

    什么是毛刺毛刺的大小和方向 如何測量毛刺的尺寸?

    的外觀、質量和安全性。測量毛刺的尺寸及方向,以及檢查已去除的毛刺都是確保產品質量的重要環節。 首先,我們討論毛刺的大小和方向如何測量。對于毛刺
    的頭像 發表于 12-07 14:24 ?5318次閱讀

    如何最小化毛刺尺寸?如何控制毛刺方向?

    如何最小化毛刺尺寸?如何控制毛刺方向? 為了得到高質量的產品或工藝品,我們通常需要把毛刺的尺寸最小化,并控制其方向。毛刺會影響制品的外觀質量、功能性能以及使用壽命。本文將介紹
    的頭像 發表于 12-07 14:24 ?787次閱讀

    PCB鉆孔毛刺產生的原因及毛刺的危害

    PCB鉆孔毛刺產生的原因及毛刺的危害 PCB(Printed Circuit Board)是一種非常重要的電子組件,被廣泛應用于各種電子設備中。在PCB的生產過程中,鉆孔是一個非常關鍵的步驟,用于
    的頭像 發表于 12-07 14:24 ?4113次閱讀

    雙面無毛刺沖裁如何實現(一種消除毛刺的加工方法)

    沖裁加工時總是會產生毛刺,很難消除掉,因此,經常在加工后進行壓毛刺消除毛刺。鑒于分型面的問題,最近使用去毛刺的方式有增加的趨勢.
    的頭像 發表于 12-12 14:17 ?819次閱讀
    雙面無<b class='flag-5'>毛刺</b>沖裁如何實現(一種消除<b class='flag-5'>毛刺</b>的加工方法)

    I2C噪聲毛刺濾波

    電子發燒友網站提供《I2C噪聲毛刺濾波.pdf》資料免費下載
    發表于 10-08 14:39 ?5次下載
    I2C噪聲<b class='flag-5'>毛刺</b><b class='flag-5'>濾波</b>
    主站蜘蛛池模板: 四房播播开心色播| 9国产露脸精品国产麻豆| 欧美性色生活片天天看99顶级| 国产精品免费大片一区二区| 中字幕视频在线永久在线观看免费 | 佐山爱痴汉theav| 偷偷鲁青春草原视频分类| 免费高清在线影片一区| 国产在线精品亚洲第一区| 纯h超级大尺度小黄文| 2022年国产精品久久久久| 亚洲AV美女成人网站P站| 日韩 亚洲 欧美 中文 高清| 迈开腿让我看下你的小草莓声音| 国产亚洲999精品AA片在线爽| 插我一区二区在线观看| 20岁αsrian男同志免费| 亚洲精品一二三区-久久| 四虎永久在线精品免费A| 热综合一本伊人久久精品| 龙广在线收听| 久久热精品18国产| 狠狠色色综合站| 国产午夜亚洲精品理论片八戒| 风车动漫(p)_在线观看官网| 99热这里有精品| 99国产精品综合AV无码| 最近日本MV字幕免费观看视频 | 国产精品一区二区在线观看| 成人无码国产AV免费看| 北条麻妃夫の友人196| ankha成人| qvod电影网| 超碰caoporon最新视频| 99热6精品视频6| jizz69女士第一次| sihu国产精品永久免费| 不卡人妻无码AV中文系列APP| 爱穿丝袜的麻麻3d漫画免费| 4399日本电影完整版在线观看免费 | 欧美香蕉大胸在线视频观看|