第二版tapout

先說說上次流回來的芯片的測試情況。

4月23日, 芯片采用裸片直接切片, bond在板子上,外面加了一個小塑料殼來保護,我們就直接拿回來測試了。

測試的主要分為模擬和數字兩部分, 數字部分的模塊基本都工作正常, 模擬的芯片不一致性很成問題,一共就回來了兩片芯片,可是模擬部分的參數不同,同時設置的寄存器給出的可調參數也起不到作用,很讓人困惑。于是,查到了5月2日又有一次流片計劃,于是急急忙忙的就開始準備了。

很匆忙的, sky1301再次流出一版,其實有三個版本, v01主要就是模擬根據3月2日流出的芯片測試情況改變了模擬部分的一些電路,數字部分就是糾正了之前版本的一些問題,比如clear_fifo 命令, rx的parity的錯誤問題, tx的取crc的時機;v02則是數字部分添加了提速模塊和防碰撞的cl_rx模塊;v03就是typeA沒提速,沒加anti-collision加上了typeB的數字收發模塊,能完成最基本的通信流。這三個版本的模擬部分是一模一樣的。

1周時間,老實說還是挺緊的。其中的提速模塊由于之前dr寫的也測試過很久的時間了,基本已經定下來了,我主要負責是防碰撞的測試,由華老師來負責改代碼,測試中還是發現了不少的問題的,比如總是在發生碰撞的時候會多往fifo里面多寫1byte的無效數據,當碰撞bit是0或是1的時候就不能正常工作等問題。
基本在測試的工程中,問題也都暴露了出來,結果最后的模塊我覺得魯棒性還是不錯的,還是等芯片回來好好測試吧。

接著是v03的芯片,加上了typeB協議的實現,tx方面用的是之前我寫的發送模塊,rx方面用的是杜主任寫的一個模塊,最后時間測試的還真的是很緊張的,不過在基本測試完anti-collision的時候,就開始了typeB的測試,杜主任的模塊犯了一個錯誤就是threshold的初值是0,而他翻轉的invert_pulse的高有效,正好是counter == threshold的時候,結果在reset完到配置到正常工作的threshold值的時候就會發生錯誤的翻轉,于是就不能正常解得所要的數據。當把門限的初值改成非0,比如說正常工作的值是12,改成12,在reset后到正常配置錢的時候就不會發生不正常的翻轉,數據就可以正常的解得。

封裝好的第一版芯片估計還還得一周左右回來,芯片回來肯定還得好好測試吧。接著再有一個半月,這次5月2日的芯片就又要回來了,新一輪的測試就要開始了,拭目以待。

再接著說說這次后仿的問題,后仿也就是一天多一點的時間跑完的,由于后端做的東西基本就是基于上一版的,問題不是很多,主要呢就是碰到了兩個問題。

第一個問題就是關于reset的問題,就比如像下面的波形圖所致,reset肯定是異步的,但是后端的工具在生成器件之后拿給我們進行仿真,在器件庫里data所在的dff對reset上升沿那里的時序是有一個recovery time的要求的,就是b和c之間的時間,為什么呢,可以這么理解,當你在reset的時候前一級的dff和本級的dff同時被復位,而此時你想將reset的電平抬起,脫離reset的狀態,如果這樣的話,前一級的D端的數據就會反映到Q端,使得本級的D端的數據無法滿足和本級的CP端的時序要求,從而使得仿真會紅,報出violation。所以如果想避免這種情況,就要使reset的上升沿與本級的clock上升沿離的足夠遠,按我的理解就應該至少比本級D端與CP的setup time要遠(實際考慮上一級的Q端與本級的D端之間的組合邏輯延時與線延時就要更長)。這樣就應該可以了。

第二個問題就是比如現在的case,我要仿真的是tx,結果rx模塊會報一些不會紅的violation,這是什么原因的呢,還是我們的rst_n起到的作用,就是說你在下達SPI_cmd(CMD_SW_RST)的時候,結果你由于rst會傳遞到各個模塊的各個寄存器,結果有一些模塊雖然沒工作但是依然處于工具檢查的狀態,雖然最后不影響結果但是依然會紅,會有影響,通常這種情況只要有異步的rst信號,就會有可能發生這種情況,如果真的是不用care的問題,那么可以在仿真的時候簡單的加一個延時,讓rst_n posedge 和clk posedge相隔的遠一些就好了,基本就沒有問題。同時,如果是可能產生的影響的話,雖然是異步的rst信號,就都要重新弄一個同步的版本給后面的模塊!

轉載于:https://www.cnblogs.com/poiu-elab/archive/2012/05/03/2481175.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/377530.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/377530.shtml
英文地址,請注明出處:http://en.pswp.cn/news/377530.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

cd-rom門鎖定什么意思_CD-ROM的完整形式是什么?

cd-rom門鎖定什么意思CD-ROM:光盤只讀存儲器 (CD-ROM: Compact Disc Read-Only Memory) CD-ROM is an abbreviation of "Compact Disc Read-Only Memory". It is a data storage memory in the form of an optical compact disc, which is read by a syst…

遠程工作時的協作工具

遠程工作時的協作工具 Google Hangout 用于日常會議和面對面交談,在國內其實可以用qq來帶起。Campfire 用于一天來的持續對話。Screenhero 用于分享屏幕,一起寫代碼,這個比較有用,可以一起寫代碼。Balsamiq 用于計劃要制作的 UI。Asana 用于管理任務Google Docs 用于…

十八、完整神經網絡模型驗證步驟

網絡訓練好了,需要提供輸入進行驗證網絡模型訓練的效果 一、加載測試數據 創建python測試文件,beyond_test.py 保存在dataset文件夾下a文件夾里的1.jpg小狗圖片 二、讀取測試圖片,重新設置模型所規定的大小(32,32),并轉為tens…

二分法變種小結(leetcode 34、leetcode33、leetcode 81、leetcode 153、leetcode 74)

目錄二分法細節1、leetcode 34 在排序數組中查找元素的第一個和最后一個位置2、不完全有序下的二分查找(leetcode33. 搜索旋轉排序數組)3、含重復元素的不完全有序下的二分查找(81. 搜索旋轉排序數組 II)3、不完全有序下的找最小元素(153. 尋找旋轉排序數組中的最小值)4、二維矩…

ID3D11DeviceContext::Dispatch與numthread筆記

假定——[numthreads(TX, TY, TZ)] // 線程組尺寸。既線程組內有多少個線程。Dispatch(GX, GY, GZ); // 線程組的數量。既有多少個線程組。 那么——SV_GroupThreadID{iTX, iTY, iTZ} // 【線程組內的】線程3D編號SV_GroupID{iGX, iGY, iGZ} // 線程組的3D編號SV_DispatchT…

kotlin 查找id_Kotlin程序查找Square區域

kotlin 查找idFormula to find area of Square: area side*side 查找Square面積的公式: area side * side Given the value of side, we have to find the area of Square. 給定side的值,我們必須找到Square的面積。 Example: 例: Input…

小米手環6解決天氣未同步問題

最近我發現了我的米6手環天氣不同步,打開Zepp Life刷新同步也不行,后來我找了一些網上的解決方法,嘗試了一些也還不行,我這人喜歡瞎搗鼓,無意之間給整好了,后來我開始總結自己操作步驟,就在剛才…

c# datetime._C#| DateTime.Month屬性與示例

c# datetime.DateTime.Month屬性 (DateTime.Month Property) DateTime.Month Property is used to get the month component of this object. Its a GET property of DateTime class. DateTime.Month屬性用于獲取此對象的月份組成部分。 這是DateTime類的GET屬性。 Syntax: 句…

C++ 內存分配層次以及memory primitives的基本用法

分配層次 C memory primitives 分配釋放類型是否可重載mallocfree()C函數不可newdeleteC表達式不可::operator new()::operator delete()C函數可allocator::allocate()allocator::deallocate()C標準庫可自由設計并以之搭配任何容器 分配與釋放的四個用法 1、malloc and delet…

jQuery easyui layout布局自適應瀏覽器大小

首先解釋一下標題的含義,當我們用jQuery easyui layout 進行布局的時候,可能會遇到這樣一個問題,那就是當手工調整瀏覽器大小,或者最大化、還原窗口的時候,layout的某個區域不能填充因為瀏覽器擴大而產 生的空白區域&a…

JAVA 作業:圖形界面

自己動手寫的一個小JAVA 程序: 一個學生管理小系統,雖然很挫,但是這我學JAVA的第一步。學了2天JAVA沒有白費! 1 import java.awt.*;2 import java.awt.event.*;3 import java.util.ArrayList;4 5 import javax.swing.*;6 7 class …

一、Pytorch對自定義表達式自動求導

例如:y ax bx c,分別對a,b,c求導 若當a3,b4,c5,x1時 import torch from torch import autogradx torch.tensor(1.) a torch.tensor(3.,requires_gradTrue) b torch.tensor(4.,requires…

css菜單下拉菜單_在CSS中創建下拉菜單

css菜單下拉菜單CSS | 創建下拉菜單 (CSS | Creating Dropdown) Trivia: 瑣事: We know the importance of navigation bar on our webpage, we know the importance of a list of items too on our webpage but what is the importance of dropdown in web pages?…

C++ 內存基本構件new/delete的意義、運用方式以及重載方式

目錄一、對new的理解1、new做了什么2、new被編譯器轉為了什么3、operate_new源代碼長啥樣二、對delete的理解1、delete做了什么2、delete被編譯器轉為了什么3、operator delete源代碼長啥樣三、構造函數與析構函數的直接調用參考一、對new的理解 1、new做了什么 C告訴我們&am…

二、線性代數

一、張量 張量表示由一個數值組成的數組,這個數組可能有多個維度 import torchx torch.arange(15) x # tensor([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])1,shape shape屬性可以訪問張量的形狀 x.shape # torch.Size([15])2&a…

Wordpress prettyPhoto插件跨站腳本漏洞

漏洞名稱:Wordpress prettyPhoto插件跨站腳本漏洞CNNVD編號:CNNVD-201311-413發布時間:2013-11-28更新時間:2013-11-28危害等級: 漏洞類型:跨站腳本威脅類型:遠程CVE編號: 漏洞來源…

JavaScript學習筆記1

Netscape 公司 DOM模型&#xff0c;層(layer)-用ID標識。 HTML標記頁面上的元素&#xff0c; <div id "mydiv">This is my div</div> CSS為這個頁面元素定位 #mydiv{ position:absolute; left:320px; top:110px; } JavaScript 訪問 (DOM模塊不同&#x…

c# 中關鍵字_C#中的“使用”關鍵字

c# 中關鍵字Prerequisite: Namespace in C# 先決條件&#xff1a; C&#xff03;中的命名空間 If you want to include namespace in a program then we need to use using keyword. For example we use Console class which is defined in System namespace that’s why we n…

C++ 內存基本構件new [] /delete []的意義、內存泄漏原因、VC下cookie的基本布局

目錄一、對new [] delete [] 的理解1、delete的[]遺漏會帶來什么影響二、以示例探討三、cookie的理解一、對new [] delete [] 的理解 new的對象是個array類型的。 Complex* pca new Complex[3]; //喚起三次ctor //無法借由參數給予初值 ... delete[] pca; //喚起3次dtor如下…

OpenJudge計算概論-找出第k大的數

/* 找出第k大的數 總時間限制: 1000ms 內存限制: 1000kB 描述 用戶輸入N和K&#xff0c;然后接著輸入N個正整數&#xff08;無序的&#xff09;&#xff0c;程序在不對N個整數排序的情況下&#xff0c;找出第K大的數。注意&#xff0c;第K大的數意味著從大到小排在第K位的數。并…