硬體設計的準則
職務:硬體及通訊系統設計
專家觀點:硬體開發的基本準則
1充分了解各方的設計需求,確定合適的解決方案
啟動乙個硬體開發專案,原始的推動力會來自於很多方面,比如市場的需要,基於整個系統架構的需要,應用軟體部門的功能實現需要,提高系統某方面能力的需要等等,所以作為乙個硬體系統的設計者,要主動的去了解各個方面的需求,並且綜合起來,提出最合適的硬體解決方案。比如
a專案的原始推動力來自於公司內部的乙個高層軟體小組,他們在實際當中發現原有的處理器板
ip大家的需要,以免在系統設計上遺漏重要的功能,第二是可以讓各個部門了解這個專案的情況,提早做好時間和人員上協作的準備,第三是從感情方面講,在設計之初各個部門就參與了進來,這個專案就變成了大家共同的乙個心血結晶,會得到大家的呵護和良好合作,對完成工作是很有幫助的。
2原理圖設計中要注意的問題
原理圖設計中要有
「拿來主義
」,現在的晶元廠家一般都可以提供參考設計的原理圖,所以要盡量的借助這些資源,在充分理解參考設計的基礎上,做一些自己的發揮。當主要的晶元選定以後,最關鍵的外圍設計包括了電源,時鐘和晶元間的互連。
電源是保證硬體系統正常工作的基礎,設計中要詳細的分析:系統能夠提供的電源輸入;單板需要產生的電源輸出;各個電源需要提供的電流大小;電源電路效率;各個電源能夠允許的波動範圍;整個電源系統需要的上電順序等等。比如
a專案中的網路處理器需要
1.25v
作為核心電壓,要求精度在+
5%- -3%
之間,電流需要
12a左右,根據這些要求,設計中採用
5v的電源輸入,利用
linear
的開關電源控制器和ir的
mosfet
搭建了合適的電源**電路,精度要求決定了輸出電容的
esr選擇,並且為防止電流過大造成的電壓跌落,加入了遠端反饋的功能。
時鐘電路的實現要考慮到目標電路的抖動等要求,
a專案中用到了ge的
phy器件,剛開始的時候使用乙個內部帶鎖相環的零延時時鐘分配晶元提供
100mhz
時鐘,結果
ge鏈路上出現了丟包,後來換成簡單的時鐘
buffer
器件就解決了丟包問題,分析起來就是內部的鎖相環引入了抖動。
晶元之間的互連要保證資料的無誤傳輸,在這方面,高速的差分訊號線具有速率高,好佈線,訊號完整性好等特點,
a專案中的多晶元間互連均採用了高速差分訊號線,在除錯和測試中沒有出現問題。
3 pcb設計中要注意的問題
pcb設計中要做到目的明確,對於重要的訊號線要非常嚴格的要求佈線的長度和處理地環路,而對於低速和不重要的訊號線就可以放在稍低的佈線優先順序上。重要的部分包括:電源的分割;記憶體的時鐘線,控制線和資料線的長度要求;高速差分線的佈線等等。
a 專案中使用記憶體晶元實現了
1g大小的
ddr memory
,針對這個部分的佈線是非常關鍵的,要考慮到控制線和位址線的拓撲分布,資料線和時鐘線的長度差
別控制等方面,在實現的過程中,根據晶元的資料手冊和實際的工作頻率可以得出具體的佈線規則要求,比如同一組內的資料線長度相差不能超過多少個
mil,每個通路之間的長度相差不能超過多少個
mil等等。當這些要求確定後就可以明確要求
pcb設計人員來實現了,如果設計中所有的重要佈線要求都明確了,可以轉
換成整體的佈線約束,利用
cad中的自動佈線工具軟體來實現
pcb設計,這也是在高速
pcb設計中的乙個發展趨勢。
4檢查和除錯
當準備除錯一塊板的時候,一定要先認真的做好目視檢查,檢查在焊接的過程中是否有可見的短路和管腳搭錫等故障,檢查是否有元器件型號放置錯誤,第一腳放置錯誤,漏裝配等問題,然後用萬用表測量各個電源到地的電阻,以檢查是否有短路,這個好習慣可以避免貿然上電後損壞單板。除錯的過程中要有平和的心態,遇見問題是非常正常的,要做的就是多做比較和分析,逐步的排除可能的原因,要堅信
「凡事都是有辦法解決的」和
「問題出現一定有它的原因
」,這樣最後一定能除錯
成功。5一些總結的話
現在從技術的角度來說,每個設計最終都可以做出來,但是乙個專案的成功與否,不僅僅取決於技術上的實現,還與完成的時間,產品的質量,團隊的配合密切相關,所以良好的團隊協作,透明坦誠的專案溝通,精細周密的研發安排,充裕的物料和人員安排,這樣才能保證乙個專案的成功。
乙個好的硬體工程師實際上就是乙個專案經理,他
/她需要從外界交流獲取對自己設計的需求,然後彙總,分析成具體的硬體實現。還要跟眾多的晶元和方案**商聯絡,從中挑選出合適的方案,當原理圖完成後,他
/她要組織同事來進行配合評審和檢查,還要和
cad工程師一起工作來完成
pcb的設計。與此同時,還要準備好
bom清單,開始採購和準備物料,聯絡加工廠家完成板的貼裝。在除錯的過程中他
/她要組織好軟體工程師來一起攻關除錯,配合測試工程師一起解決測試中發現的問題,等到產品推出到現場,如果出現問題,還需要做到及時的支援。所以做乙個硬體設計人員要鍛鍊出良好的溝通能力,面對壓力的調節能力,同一時間處理多個事務的協調和決斷能力和良好平和的心態等等。
還有細心和認真,因為硬體設計上的乙個小疏忽往往就會造成非常大的經濟損失,比如以前碰到一塊板在
pcb設計完備出製造檔案的時候誤操作造成了電源層和地層連在了一起,
pcb板製造完畢後又沒有檢查直接上生產線貼裝,到測試的時候才發現短路問題,但是元器件已經都焊接到板上了,結果造成了幾十萬的損失。所以細心和認真的檢查,負責任的測試,不懈的學習和積累,才能使得乙個硬體設計人員持續不斷的進步,而後術業有所小成。
面向設計的準則
1.模組化 因為物件就是模組,所以物件導向軟體開發模式完全符合系統的模組化設計原理。物件模組將資料結構和操作緊密地結合起來。2.抽象 類是一種抽象資料型別 通過類提供的公共介面及合法操作符,對類例項中包含的資料進行操作。使用者無須知道這些操作符的實現演算法和類中資料元素的具體表示方法,可以使用類中定...
to do list設計準則
lifehacker gina trapani 的這篇 the art of the doable to do list 講述了 to do list 應用的技巧,無論用什麼gtd系統,這些技巧都是有效的。文章包含部分gtd的概念詞語,請自行鑑別。你是自己的老闆 每天的工作中,你總會處於兩種模式裡 ...
索引 設計準則
1.乙個表如果建有大量索引會影響 insert update 和 delete 語句的效能,因為在表中的資料更改時,所有索引都須進行適當的調整。另一方面,對於不需要修改資料的查詢 select 語句 大量索引有助於提高效能,因為資料庫有更多的索引可供選擇,以便確定以最快速度訪問資料的最佳方法。2.組...