查看: 1600|回复: 15
|
请问Hardware Design的流程?
[复制链接]
|
|
我是Microelectronic的学生,现在在industrial training.
我想问Hardware Design的流程。
因为现在在公司做着capasitance sense的door access system.
这里是直接将图画在PCB才test能不能跑。因为这样pcb已经换了4个revision.
这样的流程对吗?还是可以先在breadboard试了才画pcb?
还有我想问如果将一个standalone capasitance sense door access system outsource 给外面做,
包括要完hardware和software的source code.
酱子大概会charge 多少?又要用多少时间完成?
谢谢。希望没有违犯版规。 |
|
|
|
|
|
|
|
发表于 6-9-2010 07:51 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 6-9-2010 10:28 PM
|
显示全部楼层
以我老百姓的经验硬件设计流程应该从
1)规格确认
2)将复杂设计分成简单的block
3) 从block diagram画出schematic(MCU 部分需和软件工程师一起进行)
4) 与队友/同事探讨schematic的优缺点,和改良
5)进行circuit的运算,模拟,以确定安全性和可靠性
6)元件选择,包括和厂商的FAE讨论,用在哪里,有谁用,市场的反应, 评价等。。
7)与生产部工程师探讨元件的 manufacturebility。
8)和生产部和品管部探讨如何测试元件,detect 电板的问题。。。
9) 开始画PCB,必须先确认power integrity, critical track。。。。
10)手制工程板诞生
11)进行第一轮的 EMC 和 safety test和加强其EMC的“能耐”和“不骚扰别人”
12)进行第一次试跑。
13)记录生产部的reject板的问题(通常是制程问题)
14)“轻微”的改良电路以解决“制程问题”
15)第二次试跑
16)进行reliability(如高温,高湿,heat shock..) 测试 和 EMC 和 safety compliance test
17) 进行”市场测试“。
18)如果一切没问题,可进行文件移交和troubleshooting 培训。
19)完成 |
|
|
|
|
|
|
|

楼主 |
发表于 7-9-2010 09:24 AM
|
显示全部楼层
原来你是我的学弟
虽然不知道你是谁。。 但是希望跟随发问指南
asic 1 的重点就是流程。不明白的话 ...
chan1314 发表于 6-9-2010 07:51 PM 
Hi, 你好。呵呵,好像到那里都有Tarc的前辈。我的supervisor和supplier都是Tarc的。
因为我现在做着的那个door access system的MCU firmware我已经写完了。
基本上也没什么问题。所以我不懂怎样根据指南发问。不好意识 。
我接手的时候是写revision3的hardware. 然后我就发现到他们将MCU和card wiegand generator的
data bus parrallel接去output. (详情请看:http://www.8051projects.net/forum-t36362.html)
然后data有时send不到。他们好像没有test过就直接画去PCB。所以我想问是不是要先用breadboard test?
然后现在就换了revision 4的没有parallel了。可是他们又爽爽在data line加resistor,我问为什么他说加了先
不可以就short掉它。他说如果没有画以后要加很难加。
我写的那个是简单的cap sense door access system. 就是装在一个门那边, 按password或读卡后就能开门
那种。所以我想问如果给人家做大概会charge多少钱?如果只是写firmware又会charge多少钱?
呵呵,好像很长酱。 谢谢大家耐心的看咯。谢了。 |
|
|
|
|
|
|
|

楼主 |
发表于 7-9-2010 09:28 AM
|
显示全部楼层
以我老百姓的经验硬件设计流程应该从
1)规格确认
2)将复杂设计分成简单的block
3) 从block diagram画出 ...
chtan36 发表于 6-9-2010 10:28 PM 
哇,非常谢谢你介绍的很详细。
可是 ,5)进行circuit的运算,模拟,以确定安全性和可靠性
是怎样运算,是先弄一个样本在breadboard上test吗?
谢谢。 |
|
|
|
|
|
|
|
发表于 9-9-2010 12:31 PM
|
显示全部楼层
回复 5# helloleong
你必须知道以下
1)你的circuit 要达到什么目的?
2)整个circuit 的价钱?
3)所用的元件是否符合安全标准,在市面上有什么“投诉”,有什么大厂用这个元件
4)厂商的field application engineer建议
4)元件的lead time.
5) 所用的元件是否pass 基本的测试如ESD?
6)厂商是否提供完整的datasheet和reliability report.
7) 你的工厂是否有派员工audit厂商,以了解其品管,和制程。。。
运算。
你必须知道你/你老板/客户能接受的safety margin.
1)从 voltage, current, power, frequency response。等+你所制定的safety margin。
2)很多“工程师”都不注重datasheet 的 graph, 你要知道基本calculation 是基于idea condition而非actual condition,而这些graph 便提供了actual condition 的数据, 举例我们通常将diode的forward voltage当成0.7V, 但是在不同的I forward和不同的Temp其forward voltage会变化。
3)建议你完成运算后与比较有经验的工程师进行review 和 FMEA(包括short/open所造成的damage)
4)这样做往往会剩下和多时间和稳定的安全性
运算只能确保安全,而EMC很多时候取决于PCB的routing,
1)建议你先了解grounding 和current return path,和track 的长度。
2)画完power 画critical signal line
而reliability是最复杂的也是最耗时的,它可以是pad问题,可以是component 问题,可以是process问题,而却通常包一段时间才出现问题,为了减少这类问题,我建议将production quality CNC board,做一下的test
1) temperature cyclic
2) heat shock
3) hi temperature test.
4) low temperature test
5) hi humidity test
6) hi humidity + hi temperature ...等
完成后检查金属(lead/contact)是否有氧化,coating是否有crack还是脱落,电板是否还能操作。。。。
这是一些老百姓的愚见,你才是专家 |
评分
-
查看全部评分
|
|
|
|
|
|
|
发表于 9-9-2010 02:20 PM
|
显示全部楼层
回复 helloleong
你必须知道以下
1)你的circuit 要达到什么目的?
2)整个circuit 的价钱?
3)所 ...
chtan36 发表于 9-9-2010 12:31 PM 
CHTan, 谢谢你的贡献。
有时候, 按发问者的程度来回覆, 有时写一大堆, 他们未必能看懂你要表达的,但实际上你已经非常详尽的讲出重点了, 因为他们可能还没有那个基础来理解你要说的重点, 他们可能只是要“直接”的答案。
凡是不按版规发问者,不看版规, 不尊重版规的, 我都选择不回覆他。 |
|
|
|
|
|
|
|

楼主 |
发表于 9-9-2010 03:42 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 9-9-2010 11:49 PM
|
显示全部楼层
本帖最后由 chtan36 于 9-9-2010 11:54 PM 编辑
了百姓只是表达一些愚见,不要见笑。
你要加一些component?那么我想问你一些问题。
1)为什么要加?
2)加在那里?
3)元件的 V 和 I 和Temp是否在安全范围内操作?
3)加了component会否对MCU构成问题?MCU/ASIC 的 logic 0 电压足够? logic 1 电压足够? 讯号的trancient 的软件的处理时间是否正确?。。。
一次正确不代表一千个也能正常。。。还是和有经验的工程师讨论后才决定,很多时候就是因为加了东西没有做FMEA研究其Impact而出事。。玩的开心点。。 |
|
|
|
|
|
|
|

楼主 |
发表于 13-9-2010 01:33 PM
|
显示全部楼层
非常谢谢你详细的回答。 。
我没有加啦。是别人加。呵呵。 |
|
|
|
|
|
|
|
发表于 13-9-2010 03:20 PM
|
显示全部楼层
回复 10# helloleong
我也是负责firmware的只是“业余”向其他工程师“请教“。 |
|
|
|
|
|
|
|

楼主 |
发表于 13-9-2010 04:23 PM
|
显示全部楼层
回复 helloleong
我也是负责firmware的只是“业余”向其他工程师“请教“。
chtan36 发表于 13-9-2010 03:20 PM 
酱你觉得software(firmware)比较容易做,还是hardware比较容易做?
hardware好像很危险酱,随时都可能会给电sot死。呵呵。 |
|
|
|
|
|
|
|
发表于 13-9-2010 05:57 PM
|
显示全部楼层
本帖最后由 chtan36 于 13-9-2010 06:06 PM 编辑
从工业发展,二战到今天,不难发现很多针对“硬体”管理的理论出现,其中包括了设计流程,DFMEA, 流水线的优化等等,以减少硬件的 failure rate, 可以看见硬件设计是非常成熟和有系统化的,可是“软件”管理却是一个”宝宝“。
所谓“软件”管理包含了如何“优化软件测试方法”和“统一的编写的方式”, 为何要优化软件测试,我举个例软件是由和多很多的function 组成的而很多时候一个function 的 result 会影响l另一个function 的 result 而假如每个function有10个不同conditions,那么100个functions就会制造出“天文数目”的可能性, 如果每个印证将很耗时。
我也曾面对一个”投诉“,客户投诉马达不稳定,可是当我去看时却看不到,我便将整台unit拆回办公室,可是无论我怎么做问题都不能被模拟出来,直到几个月后因为一场雨让我恍然大悟,其问题点是因为环境湿度高造成,低速旋转的马达的torque不稳定从而出现问题。我想表达的是在怎么多的condition当中很有可能因为你没有测试而日后造成问题,软件身为控制系统的大脑必须了解系统操作,硬件能力,环境,和用户。。不简单。。
可能你会问为何要统一编写方式??我想如果叫你去看看“一些高手“的程式你会发现几点
1)凌乱不堪
2)不懂/很花时间去了解他要做什么
3)非常复杂的 interlocking 造成要修改时很难/花时间。
4)滥用variable 的“名称”而又不写comment..
如果他一辈子呆在同一间公司还好,可是通常很多公司多是“人来人往”,当新人接手时Bug 就开始来了。。 |
|
|
|
|
|
|
|
发表于 14-9-2010 07:47 AM
|
显示全部楼层
回复 13# chtan36
什么类型的马达?
湿度影响马达还是电子零件? |
|
|
|
|
|
|
|

楼主 |
发表于 14-9-2010 09:09 AM
|
显示全部楼层
回复 13# chtan36
我也觉得写firmware的好象要包山包海,还要拟补hardware的不足。
设计hardware的只需跟着hardware data sheet 给的 recommended circuit 接就可以了。
我接手别人的firmware时,还发现写了错的comment/description,搞了老半天(应该有很多个半天,呵呵)
才发现原来那个function是有别的用处。
酱你那个马达的问题,改firmware能够解决问题吗?
以上只是本人经验不足的小小愚见 ,如有得罪敬请原谅。 |
|
|
|
|
|
|
|
发表于 14-9-2010 12:07 PM
|
显示全部楼层
回复 14# chan1314
其实是因为filter阻塞在加上湿度造成马达torque不稳定,导致speed 也不稳定。
马达是SCR 马达, 用triac 的 firing angle 来控制马达的speed/torque.如果你手上有speed/torque和firing angle 的 curve, 你不难发现在低转速时 D(speed)/D(torque) 非常高,而在高转速时D(speed)/D(torque) 几乎是0,换句话说在低速时微调firing angle 也可能造成速度巨变,这是第一个不稳定现象。
第二个是在error(target speed 和 feedback speed 的差别)处理,和output update rate 可能造成不稳定(软件的不稳定)。
当湿度+灰尘+马达低速运作+软件feedback处理的不稳定,就会发生speed 不稳定。。解决方法就是排除两个不稳定的东西,第一制定最低转速,而第二就是更改输出更新率。
老百姓的笨蛋经历。。不要见笑。。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|