電子產(chǎn)品設(shè)計(jì)階段的成本控制
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要: 本文從幾個(gè)角度來(lái)探討電子產(chǎn)品開(kāi)發(fā)過(guò)程中的開(kāi)發(fā)成本控制方法。開(kāi)發(fā)成本包含時(shí)間成本和資金成本,圍繞這兩點(diǎn),對(duì)以下步驟進(jìn)行了分析:項(xiàng)目宏觀(guān)規(guī)劃時(shí)的項(xiàng)目分解、文檔制作;硬件設(shè)計(jì)時(shí)的輔助設(shè)計(jì)軟件的使用技巧和電路的可塑性設(shè)計(jì);在軟件設(shè)計(jì)方面,提倡使用C語(yǔ)言來(lái)進(jìn)行開(kāi)發(fā)工作。 關(guān)鍵詞: 電子產(chǎn)品 設(shè)計(jì) 成本控制 EDA PLD 單片機(jī) C語(yǔ)言 我們?cè)谠O(shè)計(jì)電子產(chǎn)品的過(guò)程一般都會(huì)對(duì)所設(shè)計(jì)的產(chǎn)品進(jìn)行成本控制,總是盡量簡(jiǎn)化電路,減少元器件、盡量簡(jiǎn)化安裝工序。一般這些簡(jiǎn)化都是針對(duì)最終產(chǎn)品的。但是作為開(kāi)發(fā)工作本身也同樣需要成本,也需要進(jìn)行成本控制。尤其是一些產(chǎn)量小、附加值高的非消費(fèi)類(lèi)產(chǎn)品。 電子產(chǎn)品的開(kāi)發(fā)成本一般包括以下這么幾塊: 1. 項(xiàng)目可行性分析費(fèi)用 2. 聯(lián)系元器件廠(chǎng)商,獲取器件資料費(fèi)用 3. 元器件費(fèi)用 4. 開(kāi)發(fā)人員薪資 5. 樣機(jī)測(cè)試費(fèi)用 6. 時(shí)間成本 以上幾個(gè)點(diǎn)的成本控制和管理在很多工程管理的書(shū)籍和資料都有詳細(xì)介紹,本文只是根據(jù)筆者所做過(guò)的電子設(shè)計(jì)工程補(bǔ)充一些看法。 進(jìn)入項(xiàng)目可行性分析階段后,項(xiàng)目管理人員應(yīng)該仔細(xì)做好項(xiàng)目規(guī)劃工作,一個(gè)項(xiàng)目的成功與否,一般取決于該項(xiàng)目的技術(shù)復(fù)雜性和成本復(fù)雜性。為了避免由于不可預(yù)知的工程復(fù)雜性而導(dǎo)致的項(xiàng)目流產(chǎn),項(xiàng)目管理人員在制定設(shè)計(jì)方案的時(shí)候需要招集各方面的人員,把該項(xiàng)目仔細(xì)的分解開(kāi)來(lái),然后針對(duì)這些子項(xiàng)目逐一探討分析,仔細(xì)地權(quán)衡各方面因素,看看是否可行,成功的代價(jià)如何,只有每個(gè)子項(xiàng)目都做到有把握后才能將整個(gè)項(xiàng)目推入實(shí)施階段。 在項(xiàng)目通過(guò)可行性論證后,就轉(zhuǎn)入正式的開(kāi)發(fā)階段。項(xiàng)目管理人員需要制定詳細(xì)的開(kāi)發(fā)的技術(shù)規(guī)劃,一個(gè)項(xiàng)目的設(shè)計(jì)思路確定之后,該產(chǎn)品的開(kāi)發(fā)成本、制造成本和維護(hù)成本也就大致確定下來(lái)了。所以一個(gè)不良的規(guī)劃,往往會(huì)對(duì)項(xiàng)目帶來(lái)災(zāi)難性的后果。這個(gè)階段項(xiàng)目負(fù)責(zé)人要和合作的開(kāi)發(fā)人員充分交換意見(jiàn),根據(jù)開(kāi)發(fā)人員的數(shù)量和專(zhuān)長(zhǎng)將項(xiàng)目分解開(kāi)來(lái),讓每一個(gè)工程技術(shù)人員完成本項(xiàng)目的一部分工作。 項(xiàng)目開(kāi)始運(yùn)轉(zhuǎn)后一定要做好全套設(shè)計(jì)文檔。文檔中要明確每個(gè)開(kāi)發(fā)者所必須完成的功能和相互之間的接口。同時(shí)也要要求每個(gè)開(kāi)發(fā)人員為自己所開(kāi)發(fā)的模塊做好技術(shù)文檔。表面上看這個(gè)工作增加了開(kāi)發(fā)成本,但這樣不僅有利于該項(xiàng)目今后的擴(kuò)充維護(hù),也同樣有利于該項(xiàng)目的測(cè)試工作。這事實(shí)上降低了項(xiàng)目在這些方面的成本,項(xiàng)目規(guī)模越大,在這方面投入所體現(xiàn)的效益就越明顯。同時(shí)這項(xiàng)工作還可以降低由于開(kāi)發(fā)人員流動(dòng)帶來(lái)的工程擴(kuò)充維護(hù)的風(fēng)險(xiǎn),因?yàn)榧夹g(shù)文檔越多越詳細(xì),繼承該工作的技術(shù)人員所付出的時(shí)間代價(jià)就越小。 在元器件選擇方面,應(yīng)盡量使用標(biāo)準(zhǔn)器件或易于采購(gòu)的器件。因?yàn)檫@些元件產(chǎn)量大,價(jià)格好,供貨渠道也多,對(duì)于降低硬件成本有顯而易見(jiàn)的好處。尤其在所設(shè)計(jì)的產(chǎn)品產(chǎn)量不會(huì)很大的時(shí)候更應(yīng)該如此。在設(shè)計(jì)一些高附加值,小批量的產(chǎn)品的時(shí)候,盡量使用硬件模塊和軟件模塊來(lái)設(shè)計(jì),這雖然加大了一些投入,但總的來(lái)說(shuō),壓縮開(kāi)發(fā)時(shí)間,讓產(chǎn)品更快面對(duì)市場(chǎng)帶來(lái)的效益會(huì)大于這些投入。同時(shí)模塊化設(shè)計(jì)還可以提高產(chǎn)品的設(shè)計(jì)質(zhì)量。更可以將開(kāi)發(fā)人員的精力集中于高層次的設(shè)計(jì)上,提高他們的成就感。 盡量使用各種EDA(電子設(shè)計(jì)自動(dòng)化)工具。綜合使用各種EDA工具來(lái)完成設(shè)計(jì),可以大幅度加快開(kāi)發(fā)進(jìn)度,減少差錯(cuò),提高工程質(zhì)量。一提起EDA工具很多人就會(huì)想起Protel、Orcad、Pads等電路板布線(xiàn)軟件。其實(shí)這些工具不僅包含原理圖和電路板布線(xiàn),一般也包含了可編程邏輯器件(PLD)設(shè)計(jì)、信號(hào)仿真等模塊,充分利用這些功能往往可以在設(shè)計(jì)階段就發(fā)現(xiàn)很多構(gòu)思和圖紙上的缺陷。對(duì)減少設(shè)計(jì)階段的返工和修改有事半功倍的效果。此外,還有一些別的種類(lèi)的軟件,雖然不是專(zhuān)門(mén)的電子設(shè)計(jì)軟件,但我們依然可以借用。比如:如果項(xiàng)目中包含了復(fù)雜一些的數(shù)學(xué)算法(如模糊邏輯和人工神經(jīng)元算法等),我們還可以動(dòng)用專(zhuān)門(mén)的數(shù)學(xué)CAD軟件――MATLAB先仿真一下你的信號(hào)處理流程,然后根據(jù)仿真的結(jié)果來(lái)設(shè)計(jì)相關(guān)的硬件和軟件。就節(jié)約了很多在目標(biāo)機(jī)上反復(fù)寫(xiě)片、反復(fù)調(diào)試算法的時(shí)間。 在設(shè)計(jì)電路的時(shí)候,修改硬件在所難免。為了便于電路修改,要注意電路的可塑性。電路的可塑性是指電路的可修改能力。如果電路便于修改,會(huì)減少很多開(kāi)發(fā)人員更改電路的低級(jí)勞動(dòng)。提高電路的可塑性一般有以下幾種方法: 1. 能夠使用軟件實(shí)現(xiàn)的功能不要用硬件實(shí)現(xiàn)。由于硬件和軟件的物理結(jié)構(gòu)的差異,在修改硬件的時(shí)候要付出比軟件多得多的代價(jià)。用軟件代替硬件后還能降低產(chǎn)成品的成本,便于批量生產(chǎn)和銷(xiāo)售。 2. 如果電路中有CMOS、TTL電路要盡量使用PLD(可編程邏輯器件)來(lái)實(shí)現(xiàn),因?yàn)镻LD本身具有可修改的特性。用它們實(shí)現(xiàn)數(shù)字邏輯后,要改變邏輯關(guān)系的時(shí)候,只要在計(jì)算機(jī)上修改它們的邏輯描述文件,然后經(jīng)過(guò)編譯、寫(xiě)片就得到一片新的邏輯關(guān)系的集成電路。就像修改軟件一樣容易。用PLD代替不同的普通數(shù)字集成電路后,有利于減少元器件種類(lèi)。方便采購(gòu)和庫(kù)存管理。 3. 試制過(guò)程中適當(dāng)在電路板上多留一些資源,比如PLD的容量要比你預(yù)期的容量稍大一些,單片機(jī)的ROM、RAM、I/O端口等資源都要留適當(dāng)?shù)目沼?。因?yàn)樵谠O(shè)計(jì)過(guò)程中隨時(shí)會(huì)有很多不可預(yù)見(jiàn)的情況發(fā)生,解決這些問(wèn)題,通常會(huì)增加對(duì)硬件資源的需求量。如果沒(méi)有在電路板上保留適當(dāng)?shù)娜哂噘Y源,將不得不在電路板外面再搭一塊小電路板。事實(shí)證明,這樣修改電路不僅容易給電路引入干擾信號(hào),而且會(huì)大幅度降低試制樣機(jī)的可靠性,同時(shí)會(huì)使技術(shù)人員的很多時(shí)間花費(fèi)在反復(fù)修改電路的簡(jiǎn)單勞動(dòng)上。 編寫(xiě)單片機(jī)的軟件的時(shí)候,應(yīng)該盡量使用高級(jí)語(yǔ)言來(lái)編寫(xiě)?,F(xiàn)在許多開(kāi)發(fā)單片機(jī)的技術(shù)人員依然保留了80年代的開(kāi)發(fā)方法。使用匯編語(yǔ)言,逐條指令編寫(xiě),并且手工分配單片機(jī)中的內(nèi)存資源。這種方法在寫(xiě)小規(guī)模軟件還可以,可一旦軟件規(guī)模變大之后,由于匯編語(yǔ)言的低可讀性、低結(jié)構(gòu)性往往會(huì)讓設(shè)計(jì)人員被自己軟件中的復(fù)雜的邏輯關(guān)系搞得暈頭轉(zhuǎn)向,在一個(gè)軟件的邏輯關(guān)系混亂后,要保證寫(xiě)出來(lái)的軟件能安全運(yùn)轉(zhuǎn)是很困難的。 我們推薦使用C語(yǔ)言來(lái)寫(xiě)軟件單片機(jī)代碼。(對(duì)于常見(jiàn)的8051系列,我們一般使用KEIL、FLANKLIN 等軟件。其它類(lèi)型的單片機(jī)一般都有其配套的C語(yǔ)言編譯器,該型號(hào)單片機(jī)的經(jīng)銷(xiāo)商一般可提供)用C語(yǔ)言有這么幾個(gè)好處: 1. 可以大幅度加快開(kāi)發(fā)進(jìn)度。 2. 可以實(shí)現(xiàn)軟件的結(jié)構(gòu)化編程,它使得軟件的邏輯結(jié)構(gòu)變得清晰、有條理。 3. 在寫(xiě)一些數(shù)學(xué)算法和循環(huán)、判斷語(yǔ)句的時(shí)候有比匯編語(yǔ)言高得多的效率。 4. 省去了人工分配內(nèi)存資源的工作,在匯編語(yǔ)言中我們不得不為每一個(gè)子程序來(lái)分配儲(chǔ)存變量的空間,這是一個(gè)復(fù)雜、乏味又容易出差錯(cuò)的工作。而使用C語(yǔ)言后你只要在代碼中申明一下變量的類(lèi)型,編譯器就會(huì)自動(dòng)為你分配寄存器和內(nèi)存,低級(jí)重復(fù)易出差錯(cuò)的事情都由計(jì)算機(jī)代勞了。根本不要人工干預(yù)。 5. 因?yàn)檠h(huán)、判斷語(yǔ)句和變量名字都使用自然語(yǔ)言,因此寫(xiě)出來(lái)代碼的可維護(hù)性和軟件可讀性很好。這樣當(dāng)需要更換軟件開(kāi)發(fā)人員的時(shí)候,可以比較容易地進(jìn)行代碼移交和消化。即使沒(méi)有更換人員,他們?cè)诰S護(hù)自己的代碼的時(shí)候也比較容易。 6. 當(dāng)寫(xiě)好了一個(gè)算法后,以后需要在不同種類(lèi)的CPU上也需要這個(gè)算法時(shí),可以直接引用原來(lái)的代碼,再配合這種CPU專(zhuān)用的編譯器重新編譯就可以了。這樣可以實(shí)現(xiàn)軟件的低成本跨平臺(tái)移植。而匯編語(yǔ)言在這種情況下,除了重新寫(xiě)代碼,沒(méi)有別的辦法。因?yàn)镃語(yǔ)言的這種特性,如果在設(shè)計(jì)復(fù)雜算法時(shí)(比如視頻/音頻信號(hào)處理、模糊邏輯和人工神經(jīng)元算法等),可以在PC機(jī)上使用Visual C++、C++ Build等x86平臺(tái)的C語(yǔ)言編譯器設(shè)計(jì)、調(diào)試該算法的代碼,調(diào)試成功后就可以移植到單片機(jī)的軟件系統(tǒng)中去。由于PC機(jī)上有充足的系統(tǒng)資源,開(kāi)發(fā)調(diào)試進(jìn)度會(huì)有大幅度的提高,這樣就節(jié)約了軟件的時(shí)間成本。 7. 在團(tuán)體寫(xiě)作的軟件中,軟件接口容易做到規(guī)范統(tǒng)一。 雖然使用C語(yǔ)言寫(xiě)出來(lái)的代碼會(huì)比匯編語(yǔ)言所占用的空間要大5%~20%,但是由于半導(dǎo)體技術(shù)的發(fā)展,芯片的容量和速度有了大幅度的提高。在這種情況下,代碼占用的空間差異已經(jīng)不是很關(guān)鍵的了。相比之下,我們更應(yīng)該注重軟件是否可以長(zhǎng)期穩(wěn)定運(yùn)行的能力,注重使用先進(jìn)開(kāi)發(fā)工具所帶來(lái)的時(shí)間成本的優(yōu)勢(shì)。 |