女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

InterfaceDesinger 使用案例

XL FPGA技術交流 ? 來源:XL FPGA技術交流 ? 作者:XL FPGA技術交流 ? 2024-05-20 16:16 ? 次閱讀

時鐘輸出

易靈思所有的GPIO都可以用作時鐘輸出。這里我們提供兩種時鐘輸出方式。

方法一:把時鐘設置為clkout模式。下圖選自鈦金系列ds上的IO框圖 。從圖片上可以看到OUTCLK的路徑。

f4658bc8-0b41-11ef-b759-92fbcf53809c.png

在添加 GPIO時,設置Mode為clkout,并在output Clock中輸入時鐘名。

f47bd572-0b41-11ef-b759-92fbcf53809c.png

f4908148-0b41-11ef-b759-92fbcf53809c.png

這里需要 注意的是,時鐘名不能從core直接輸出,而只能使用interface中使用的時鐘,如PLL輸出的時鐘或者GCLK輸入的時鐘。比如我們在代碼中定義了一個IO,如下:

module clk_test(...
output clk_100m,
...);

如果直接把代碼中定義的clk_100m直接配置給interface的GPIO,這時軟件會報錯。

方法二:

通過DDIO的方式設置時鐘輸出。IO模式設置為output,并打開Register Option及Double Data I/O Option,并指定時鐘。

f49751ee-0b41-11ef-b759-92fbcf53809c.png

f49aedd6-0b41-11ef-b759-92fbcf53809c.png

f4aba4be-0b41-11ef-b759-92fbcf53809c.png

程序內部分別對DDIO的高低位分部賦值為1或者0.

assign clk_out_inst_HI = 1'b1;assign clk_out_inst_LO=1'b0;

對于兩種方式的使用,Trion有很大一部分的GPIO不支持DDIO,只能使用第一種方式,鈦金所有的GPIO都支持DDIO;另外在源同步時鐘數據輸出時,DDIO的方式可以保證數據和時鐘的延時一致,所以易靈思推薦使用DDIO的方式。

Efinity處理三態端口問題

我們在處理三態門時一般都是用下面的語句;

inout bidr_pad;wirein;wire out;wireo_oe;
assign bidr_pad= o_en ? out :z; assignin=bidr_pad;

其實它對應的硬件結構就是下面的框圖。它涉及到3個信號:in,out,o_en。

當o_en = 1時,out可以通過out buf輸出到pad上,同時會反饋到in;

當o_en = 0時,out buf就是高阻態。in的信號就是通過外部pad通過in buf輸入進來。

f4bfd858-0b41-11ef-b759-92fbcf53809c.png

最初使用Efinity,因為架構差異,很多人被inout的使用難住了。這里來說明一下。在易靈思的產品架構中,原有的rtl代碼都是針對fabric的,也就邏輯部分。而IO被認為是外設。如下圖I/O Buffer部分相對于fabric是外設,它是在Efinity的interface Designer中設置的。這樣在rtl只需要定義:

inputin;outputout;output o_oe;

f4c31482-0b41-11ef-b759-92fbcf53809c.png

有了上面的認知,我們就容易理解在efinity中怎樣添加三態。

添加三態門的過程如下:

我們在interface中添加一個gpio,命名為sda,把Mode,選擇為inout,

f4d477d6-0b41-11ef-b759-92fbcf53809c.png

點擊show/Hide GPIO Resource Assigner,打開IO分配界面分配IO.

f4f0814c-0b41-11ef-b759-92fbcf53809c.png

點擊保存和Generate Efintiy Constraint Files.

f4fa5e06-0b41-11ef-b759-92fbcf53809c.png

打開工程面板下面的Result下的xxx_template.v,可以看到里面添加了

f4fda1c4-0b41-11ef-b759-92fbcf53809c.png

Inputsda_IN,output sda_OE,output sda_OUT

三個信號,把這三個信號復制到工程文件的頂層中去,這樣就定義好了一個inout,可以直接全用了。

另外如果要添加IO寄存可以根據實際需要去選擇,同時要注意為寄存器選擇準確的時鐘。


這樣就不用再寫assign sda = oe ? sda_out :z; 這樣的語句,因為oe就是sda_OE, sda_out對應的就是接口生成的sda_OUT。

在Efinity的.v文件中不支持inout 雙向口的定義,另外Efinity也不支持‘z’這種定義。


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

    關注

    16

    文章

    1270

    瀏覽量

    53543
  • 易靈思
    +關注

    關注

    5

    文章

    52

    瀏覽量

    5142
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    智能眼鏡賽道火熱!高通、全志、ST和星宸科技放出哪些大招?

    近日,智能眼鏡市場高潮迭起。5月20日,谷歌公司在Google I/O 主題演講中發布了對標Meta的 Android XR 智能眼鏡,內置鏡頭和麥克風,讓Germini能夠“看到”和“聽到”這個世界,這款XR智能眼鏡可以進行實時翻譯和進行視頻通話。 Google I/O 大會上智能眼鏡截圖 5月25日,李未可發布了智能眼鏡新品,給消費者帶來了李未可View AI眼鏡、City Air AI眼鏡、City AI眼鏡時尚款。其中,李未可View AI眼鏡重量38g,可以實現AI自拍、AI即刻拍、AI隨身記、AI隨地游、AI隨時譯四大
    的頭像 發表于 05-31 21:40 ?532次閱讀
    智能眼鏡賽道火熱!高通、全志、ST和星宸科技放出哪些大招?

    AD74115單通道軟件可配置的輸入和輸出技術手冊

    AD74115是一款單通道、軟件可配置輸入和輸出器件,適用于工業控制應用。AD74115提供各種單芯片集成用例。這些用例包括模擬輸出、模擬輸入、數字輸出、數字輸入、電阻溫度檢測器(RTD)和熱電偶測量功能。串行外設接口(SPI)用于處理與器件的所有通信。數字輸入和數字輸出可通過SPI或通用輸入和輸出(GPIO)引腳訪問,以支持更高的數據速率。
    的頭像 發表于 06-01 16:12 ?36次閱讀
    AD74115單通道軟件可配置的輸入和輸出技術手冊

    MAX22196八通道工業灌/拉數字輸入技術手冊

    MAX22196 是一款工業八通道數字輸入套件,可將八通道工業 24V 或 TTL 電平輸入轉換為邏輯電平輸出。該套件具有一個串行接口,允許通過 SPI 配置和讀取串行數據。 輸入通道可單獨配置為灌(P 型)或拉(N 型)輸入。每個數字輸入的限流器可最大程度降低功耗,同時確保符合 IEC 61131-2 標準。使用單電流設置電阻器,可將輸入單獨配置為 1/3 型、2 型、TTL 或 HTL(高阻抗 24V 電平)。可單獨禁用電流沉或電流源。
    的頭像 發表于 06-01 16:06 ?29次閱讀
    MAX22196八通道工業灌/拉數字輸入技術手冊

    LM7321-Q1 汽車級、單路、32V、20MHz運算放大器技術手冊

    LM732xx 器件是具有寬工作電壓范圍和高輸出電流的軌至軌輸入和輸出放大器。LM732xx 系列非常高效,能實現 18V/μs 的壓擺率和 20MHz 的單位增益帶寬,同時每個運算放大器只需 1mA 的電源電流。LM732xx 器件的性能在 2.7V、±5V 和 ±15V 的條件下完全符合運行規格。
    的頭像 發表于 06-01 15:18 ?37次閱讀
    LM7321-Q1 汽車級、單路、32V、20MHz運算放大器技術手冊

    TLV2461A-Q1 汽車級、單路、6V、6.4MHz、1.5mV失調電壓、RRIO運算放大器技術手冊

    TLV246x-Q1 低功耗軌至軌輸入/輸出運算放大器系列中的器件專為 HEV/EV 和動力總成中的蓄電池管理系統以及車身和照明應用中的照明和車頂模塊系統 而設計。這些器件的輸入共模電壓范圍在電源軌基礎上向外擴展,從而在低電壓系統中實現最大動態范圍。放大器輸出具有軌至軌性能以及高輸出驅動能力,克服了舊式軌至軌輸入/輸出運算放大器的局限性。這種軌至軌動態范圍和高輸出驅動能力使得 TLV246x-Q1 非常適合緩沖模數轉換器。
    的頭像 發表于 06-01 14:23 ?26次閱讀
    TLV2461A-Q1 汽車級、單路、6V、6.4MHz、1.5mV失調電壓、RRIO運算放大器技術手冊

    LM7321 單路、32V、20MHz 運算放大器技術手冊

    LM732xx 器件是具有寬工作電壓范圍和高輸出電流的軌至軌輸入和輸出放大器。LM732xx 系列非常高效,能實現 18V/μs 的壓擺率和 20MHz 的單位增益帶寬,同時每個運算放大器只需 1mA 的電源電流。LM732xx 器件的性能在 2.7V、±5V 和 ±15V 的條件下完全符合運行規格。
    的頭像 發表于 06-01 14:14 ?45次閱讀
    LM7321 單路、32V、20MHz 運算放大器技術手冊

    TLV2460A-Q1 具有關斷功能的汽車級、單路、6V、6.4MHz、1.5mV失調電壓、RRIO運算放大器技術手冊

    TLV246x-Q1 低功耗軌至軌輸入/輸出運算放大器系列中的器件專為 HEV/EV 和動力總成中的蓄電池管理系統以及車身和照明應用中的照明和車頂模塊系統 而設計。這些器件的輸入共模電壓范圍在電源軌基礎上向外擴展,從而在低電壓系統中實現最大動態范圍。放大器輸出具有軌至軌性能以及高輸出驅動能力,克服了舊式軌至軌輸入/輸出運算放大器的局限性。這種軌至軌動態范圍和高輸出驅動能力使得 TLV246x-Q1 非常適合緩沖模數轉換器。
    的頭像 發表于 06-01 14:09 ?37次閱讀
    TLV2460A-Q1 具有關斷功能的汽車級、單路、6V、6.4MHz、1.5mV失調電壓、RRIO運算放大器技術手冊

    LMP8640HV -2V至76V、950kHz電流感應放大器技術手冊

    LMP8640、LMP8640-Q1和LMP8640HV是精密電流感測放大器,在存在電源電壓范圍為2.7V至12V的高輸入共模電壓的情況下,檢測感測電阻器兩端的小差分電壓。
    的頭像 發表于 06-01 13:55 ?23次閱讀
    LMP8640HV -2V至76V、950kHz電流感應放大器技術手冊

    MAX22007集成基準電壓源的四通道12位可配置模擬輸出器件技術手冊

    MAX22007是一款可通過軟件配置的四通道模擬輸出器件,可在每個通道上提供電壓或電流輸出。對于高壓電源(HVDD = 8V至20V,HVSS = -2V至0V),所有輸出都具有±42VP-P 保護。
    的頭像 發表于 06-01 10:44 ?64次閱讀
    MAX22007集成基準電壓源的四通道12位可配置模擬輸出器件技術手冊

    ip6809芯片規格書

    英集芯IP6809芯片,高集成化設計,實現2-3線圈立體交通網,兼容使用不同位置的充電底座。5W-15W動態功率調節,蘋果7.5W、三星10W等不同充電模式無縫切換。內置九重電力管理系統,實現溫度控制哲學。
    的頭像 發表于 06-01 08:48 ?58次閱讀
    ip6809芯片規格書

    你知道船用變壓器有哪些嗎?

    在船舶和海洋平臺上,電力系統的穩定運行至關重要,而船用變壓器作為其中的關鍵設備,其種類繁多,各具特點。你知道船用變壓器有哪些嗎?讓我們一起來揭開它們的神秘面紗。CSD船用變壓器是船舶供電系統中的主力軍。在船舶的日常航行中,CSD船用變壓器能夠高效地將電能從發電機組傳輸到各個用電設備,確保船舶的正常運行。無論是船舶的推進電機、舵機,還是各種生活設施和導航設備,
    的頭像 發表于 06-01 00:00 ?46次閱讀
    你知道船用變壓器有哪些嗎?

    C語言實戰2例

    【程序1】題目:有1、2、3、4個數字,能組成多少個互不相同且無重復數字的三位數?都是多少?1.程序分析:可填在百位、十位、個位的數字都是1、2、3、4。組成所有的排列后再去掉不滿足條件的排列。 2.程序源代碼:main(){int i,j,k;printf(\"\\n\");for(i=1;i<5;i++)    /*以下為三重循環*/ for(j=1;j<5;j++)   for (k=1;k<5;k++)   {    if (i!=k&&i!=j&&j!=k)    /*確保i、j、k三位互不相同*/    printf(\"%d,%d,%d\\n\",i,j,k);   }}==============================================================【程序2】題目:企業發放的獎金根據利潤提成。利潤(I)低于或等于10萬元時,獎金可提10%;利潤高于10萬元,低于20萬元時,低于10萬元的部分按10%提成,高于10萬元的部分,可可提成7.5%;20萬到40萬之間時,高于20萬元的部分,可提成5%;40萬到60萬之間時高于40萬元的部分,可提成3%;60萬到100萬之間時,高于60萬元的部分,可提成1.5%,高于100萬元時,超過100萬元的部分按1%提成,從鍵盤輸入當月利潤I,求應發放獎金總數?1.程序分析:請利用數軸來分界,定位。注意定義時需把獎金定義成長整型。      2.程序源代碼:main(){long int i;int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;scanf(\"%ld\",&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15; if(i<=100000)  bonus=i*0.1; else if(i<=200000)     bonus=bonus1+(i-100000)*0.075;    else if(i<=400000)        bonus=bonus2+(i-200000)*0.05;       else if(i<=600000)           bonus=bonus4+(i-400000)*0.03;          else if(i<=1000000)              bonus=bonus6+(i-600000)*0.015;             else              bonus=bonus10+(i-1000000)*0.01;printf(\"bonus=%d\",bonus);} ==============================================================
    發表于 05-31 23:55

    【高云GW5AT-LV60 開發套件試用體驗】代碼解讀-LVDS屏幕驅動

    今天我們繼續來學習高云開發板的代碼,我們拿著開發板自然是要開發的,所以看代碼是非常重要的,何況這種FPGA開發板上面沒啥外設的,基本上都是接口,寫這種評測報告嘛,其實光拍板子也是拍不出什么引人入勝的圖片。我看很多大神都是講協議講代碼的,所以咱們也繼續講代碼好了。 講完前面幾篇代碼解讀,這篇就看起來有點用了,畢竟能點屏幕,至少像個玩具了。不過為了玩這個屏幕還是需要了解點相關知識的。 代碼是這個位置,直接打開這個工程就好,這個demo說明上說是驅動屏幕出一些圖案,我們可以先燒錄試試。 這里有個小插曲,可能有些寶寶也會遇到。就是首先我們打開的是個LVDS屏幕的代碼,它代碼里面居然有個hdmi的東西,所以我們正常人肯定看了會受不了,直接把它從硬盤上刪除才解恨。 不過刪完后在編譯,我暈,居然IDE閃退了,這就后悔了…… 試了好多次都是閃退,又不想重新去下載代碼。仔細觀察后發現,原來路徑里面中文,雖然我們是ubunt但是對方的IDE可能是windows開發的,所以這個bug還是有可能有的。 如圖把demo程序移動到外面,然后就可以編譯了。 搞完以后還要在project配置里面把這個幾個復用腳給溝上,大概意思是這幾個腳是要配置才能用于其他功能的。 折騰一圈總算可以燒錄到板子上了。 接著進入正題。想看懂代碼首先我們需要了解lvds的規范,如果里百度一大圈發現,找的到似乎又找不到,看完還是然并卵。所以我寫這個代碼解讀不是要大家去看代碼而是看我打的字。 這是個行業套路,比如我們上班會調屏幕,這樣供應商會把所有的技術資料給我們,然后我們根本不需要去百度什么lvds規范。 但是像這個學習板的屏幕我們也是沒有拿到技術資料的,那這些技術資料需不需要呢,我只能說如果要從零開始寫這個程序肯定是需要的。大家知道如果你做這行就能了解到細節,不做那對你就是套路。 我公司的資料也是不能寫在這里的,所以我也是網上隨便百度了一些資料。 這個表是每個屏幕必須有的,無論是FPGA還是SOC去點屏幕都需要這些參數。這個是天馬的屏幕,上面還有水印,不過我是百度出來的下載到的,按照商業習慣都是應該要保密的。舉個例子說明一下,比如屏幕是1024*600的,那實際上線路上會傳輸跟多的像素,比如1100 * 700這么大的圖,然后多余的不部分可能會分布在上下左右,這個叫水平和豎直消隱。像素傳輸的時候也是按照從左到右的再從上到下方式掃描,FPGA程序需要按照屏幕的要求傳輸比實際圖形更大的這些像素過去。 這個圖可以看到VS和HS這兩個信號,一般這兩個信號是低電平有效的,一個表示幀同步,一個表示行同步,下面還有一個信號叫DE表示數據有效,也就是有效的圖形的像素被傳輸的時候DE就有效了。 然后這個圖表達了像素的信息具體是怎么傳輸的,比如RGB的顏色分別用幾個bit表示,然后每個bit又是在線路上怎么傳輸的,具體時序應該都會寫得非常清楚。 注意,上面幾張圖片都不是我們調的屏幕的的文檔,因為我沒有那個文檔,所以也沒法截圖,當然屏幕的文檔沒有我們肯定是沒法調屏幕的。這里我講講大體方法就好,屏幕各種各樣,只要能了解到它每個bit的那么底層,就能把代碼寫出來了。 我們的屏幕應該用的VESA這種格式傳數據的,這個格式可以百度到,比如兩個LVDS通道來傳輸一個屏幕的圖像時,一路LVDS是10條線,其中一對是clk,剩下4對分布是數據。這個clk是個7bit的數據組成的圖案,1100011這樣先高中間低再高,是7個bit拼成的波形。下面每對數據一次傳7個bit,8對線就是7*8=56個bit,一路lvds是4對數據線,兩路組成56個bit,所以一路是28bit,一個像素有個24個bit分布代表紅綠藍三色的亮度,還有4個bit是控制位,就是前面說的vs hs de的信號,還有一個xx是保留的bit。從這樣的圖可以看出屏幕顯示一個像素需要按照這樣的時序來接收電平的變化。 有了以上的知識,我們可以繼續解讀代碼了。 頂層代碼有一個25m的外部時鐘輸入,輸出有一個led燈,pwd是無用的,代碼里面給它賦值常高,里面有些注釋hdmi什么的這些應該是為了給小白制造恐慌用的,反正看注釋你就輸了。 lvds它定義了一路的時鐘,和4路的數據,這說明它是單路的lvds。這里的lvds的知識有點多,我可能無法說細,如果有疑問就多百度,或者在下面回帖問我。 接著頂層的代碼要從下往上看,它調用了很多ddio_lvds的模塊,我們看這個模塊里面是什么,其中最主要的是OVIDEO源語,這個可以查高云的手冊,它是個7位的串化解串源語。 正如我們前面理論說的,一路lvds有4個數據線,每個數據線傳一個像素需要送7個bit,所以這里會有串化解串操作。 數一數一共四個ddio_lvds調用,所以一次可以傳送28個bit。這里一次指的是一個像素時鐘周期,也有表示位pclk的,前面的屏幕參數里面提到的時鐘周期一般都是指這個時鐘。 我們再放大了看看,這里有個fclk一個pclk,這兩個clk相差3.5倍,至于為什么相差3.5這要您數學好一點了。上面理論提到的1100011也在這里有。fclk實際上是串化解串的時候移位用的,pclk就是一個發送像素的周期。大家算一下發送兩個像素,正好就移位了7個bit,根據屏幕的規格書算一下,算明白了這里也就理解了。 接著是colorbar的生成邏輯,看接口能看出來,大概是在屏幕上哪個坐標,生成什么顏色的像素。這個像素是24bit的。 有了前面幾次的代碼解讀基礎,這次也不用解釋那么細了,主要看懂這個模塊是根據屏幕坐標的輸入,輸出顏色就好,看上圖的代碼就是判斷坐標的大小,生成條狀的顏色,如果橫豎都變化,是不是就會變成弧形了,這又是個數學問題,咱們也不深究了。 lcd驅動這塊,我們看接口可以看到,有關于vs hs de的信號的生成,顏色的生成,大概要按照前面理論說的拼出vesa的格式的那個28個bit吧。然后按照消隱的要求控制hs vs de的電平就好。 點開這個lcd_driver的模塊代碼,別的我們可以看不懂,但這個計數的代碼總不能看不懂吧,反正就是它數這個pclk,數出來這行是第幾個像素,列又是第幾個像素,然后減去左邊和上面的消隱區,就是實際顯示圖形的像素坐標,對吧。 看到這坨代碼的時候其實也沒必要驚慌,因為這些H_BACK,V_SYNC就是消隱那些概念里面的東西,你百度一下里面就懂了,然后又是數學的計算,我數學沒及格所以就沒一筆一劃的看了。 最后再放大了看一下這塊,就是怎么算出顯示圖像的坐標的,根據這個坐標調用lcd_display就能獲取到顏色的24個bit了。這里問大家一下,為什么不直接在這里調用lcd_display呢?作者是在頂層調用lcd_display,然后再用一些引腳把數據傳入傳出,看上去是挺麻煩的,這里我覺得可能是一種代碼習慣,就是把模塊盡量的平行化布局,不要用復雜的樹行結構,理解這種思路以后可能對寫大的工程有所幫助。 嗯,看來學習別人的代碼的確可以得到不少書本上沒有的東西。關于這些套路大家慢慢體會吧,FPGA這個行業被迫討飯的多少都是被坑了的。
    發表于 05-31 23:01

    LTC1545軟件可選擇多協議收發器技術手冊

    LTC1545 是一個包含 5 路驅動器和 5 路接收器的多協議收發器。 LTC1545 和 LTC1543 可構成支持 RS232、RS449、EIA530、EIA530-A、V.35、V.36 或 X.21 協議的一種完整的軟件可選擇 DTE 或 DCE 接口核心。 利用 LTC1344A 軟件可選擇電纜終端芯片或采用現有的分立器件設計方案可實現電纜終端。
    的頭像 發表于 05-31 16:13 ?113次閱讀
    LTC1545軟件可選擇多協議收發器技術手冊

    InterfaceDesinger 使用案例-v3

    ? 1、?DDIO用法 2、 時鐘輸出 3、 Efinity處理三態端口問題 4、 PLL的添加? 5、HSIO的解串器用法 ? 1、DDIO用法 對于輸入輸出IO很多時候會用到DDIO的用法。對于DDIO,就是時鐘的雙沿采集或者發送數據,所以必須要用到寄存器。它的設置也比較簡單,在intefaceDesigner中添加GPIO,并把register Option設置為register,另外要設置Double Data IO Option模式,分別為normal和resync。 ? 下圖是 易靈思的GPIO的結構。 ? 對應上圖我們以ODDIO為例,分別標出了reg1,reg2和reg3三個寄存 器。當
    的頭像 發表于 07-17 16:24 ?1665次閱讀
    <b class='flag-5'>InterfaceDesinger</b> 使用案例-v3