页次: 1
@jameschen
有什么理由必须要用Quartus II 18吗?ALTERA卖身好久了,市面上常见的新的器件差不多就是Cyclone4?13.0 sp1完全可以支持,老器件也是13.0sp1支持比较好。所以没什么理由用更新的Quartus版本
我一般都是把新工具降级去支持老系统,在一个系统稳定的情况下,不会刻意为了升级而升级,升级带来了一系列非预期的环境变化,没有意义的事情,升级通常只会吃掉更多系统性能,而原厂希望客户升级,因为可能涉及到一些ip产权的变更,一些合作供应商的替换,原来集成在ide里面的供应商组建需要替换.但是对于最终用户,没有这种顾虑
@jiaowoxiaolu
因为控制字写在 ur_project.qsf文件中,这个文件其实也是一个脚本,会被af.exe调用
然而约束控制字都是altera的东西,你甚至可以在altera的工程目录下找到类似的.qsf文件,然后把需要约束的管脚配置字,摘抄过来
为什么agm不公开这些?因为这些东西是altera/intel的,quartus ii中用户不必关心.qsf文件,直接在assignment editor中有配置,配置完毕后会自动更新.qsf。而在agm中,是直接编辑这个.qsf文件。
我一开始也尝试去向供应商询问这些东西,但是基于某些原因,没有获得我需要的解答,因此都是自己慢慢啃生肉。当然,在此过程中已经了解为什么会不解答这些技术问题。因为这涉及到agm对altera的软硬件做了什么的问题,这些问题是不方便原厂自己公开释放的
那么,有什么办法防止从spi nand里读出rootfs呢?
总线xor加密,但是spi flash最好选qpi的,这样4bit data总线还能错乱一下并和一个固定字做xor,如果是标准spi,那么无法xor,除非在spi的协议上修改,做成私有协议
以下谈点个人对皮脚,加密的看法,所高级的加密就是让皮脚的人觉得他已经皮脚了出来。也就是说,不要完全封闭,不要让人dump出来一片空白,就是要能dump出来,ida pro后还是有意义的程序代码,这段代码还能开机,运行,测试短期内甚至跑起来还不错。但是,却不能让它长期稳定跑。
皮脚可能是找的第三方解密公司,他们不会给你做长期测试,也就2-3天内简单测试一下就交付了,好交付给某个老板,某个老板觉得已经dump出来了,于是开料投产,投产后顺利上市,然后出货后等个把月,就出现机器异常问题。这是最具有杀伤力的。简单完全封闭,皮脚的老板碰到钉子就觉得对方是和狠货,也就没有信心再皮脚了,就是要装做无辜小白,让对方觉得已经被拿捏住了,然后再来坑他一笔大的,叫他投资打水漂
agm的toolchain其实是属于外挂,对quartus ii做了一定程度的注入,migration以后产生的quartus ii的工程文件,然后就是利用quartus ii综合,此时需要运行agm的外挂脚本(af_quartus.tcl),脚本中把综合的约束条件自动注入综合器(它会覆盖原始quartus ii中的综合setting优化设置),产生网表
然后执行agm的fitter(af.exe)去布局布线,此时注入fitter的约束条件,同时根据.ve的pin脚分配产生bin。
在利用quartus ii做综合的的时候,一旦运行了agm的脚本,如果再次去修改ide的全局综合优化设置,就会改变外挂之前设置好的参数,所以,一旦运行脚本(af_quartus.tcl)后,就不建议去做其他setting修改,这会导致产生一些非预期的问题,唯一能做的就是点箭头start compilation
如果你在次过程中,不慎修改了setting,那么最好还是再次运行一下外挂脚本(af_quartus.tcl)
由于是外挂,因此步骤上是必须严格按照顺序的,点错了,或者中间修改了ide设置,都有可能破坏注入参数
fitter效率突破不了90%上限的问题,可能是无法解决的,我试图编辑.qsf文件的约束参数也没有什么优化,基本上原厂提供的配置就已经到达极限了。 也并非的工具的问题,我发现agm用的约束参数就是quartus ii兼容的(这里面很奥妙),cyclone 4架构或许就是需要剩余一部分面积才能布局布线走出来,而阉割到2K或许无法保证剩下的10%的面积连成一片,零散的10%的面积或许就是无法利用起来的,甚至无法插入一个锁存/触发模块
基于LUT结构的FPGA,Verilog代码需要写的尽量对称,所谓对称,就是if或者case语句内尽量具有相同的表达式结构,越对称,便于合并相同逻辑,综合的效率越高。同时尽量把case的所有分支都填充满,条件越详细,反而综合后分配的LUT越少。
虽然fitter的优化约束无法扣出资源,但是在综合这个步骤,通过改写代码,统一表达式结构,同样扣掉了几十个LUT出来,以前我做IC设计bring up时候的痛苦回忆又回来了,要跑通一个优化的配置,可能需要跑上百次verification. 通常效率最高的时候是在半夜,这个时候没有人和你争服务器job现程。而在白天,比如在一间科技公司,几百号人争夺代码服务器上的cpu资源,通常很难跑的快
int OSC calibration失败的原因已经解决,对Jlink-OB下载线的vcc 3.3v供电很敏感. 偏差0.5V都不行。
我因为通常习惯在jtag调试器对target板供电为了防止反向灌流加个二极管,由此导致了vcc的压降,造成校准失败。
虽然我已经让校准通过,但是我对校准精度不报大的期望,当然,这个内部晶体时钟我只用来对信号延迟计数用,并不涉及其他,请不要学我,我任何时候都是把器件用到很抠门的地步,能省一颗料则省。
最后还是希望agm在这里对内部晶体供电做一个补偿,是否考虑内部供电统一安排到2.5v vcc(vddio除外),以便当用户在使用欠压下载线的时候能够保证内部晶体的稳定
@echo
卖产品,是要直接跟客户对接的,客户对你有要求十分正常
我就想问,个人用户是直接找芯片厂家买的芯片吗?
有些你说要买人家还不卖,要你提供公司名字,营业执照,开户行账号等等,你总不能为了要点资料就自己注册个公司开个企业账户还存进去一笔钱吧?对,某些企业的财务还会找银行核查企业账户资金,还会做背景调查查你公司的信息(当然现在网上也能查到了),查你公司规模组织架构投资者关系,查股权变更信息查有无法律纠纷等等,这一论背景调查后,觉得ok的,来签个NDA
哦,有些签NDA还有附加条件的,就是必须购买一定数额的芯片,行业叫做入门费,可以交钱货暂时留存在原厂或代理商那里,等哪天提完这批数量的货了,入门费再从以后的提货芯片购买价中打折陆续返还。
这些都是对小客户以及终端散户的限制,原厂用这些方式来筛选出符合他们要求的所谓的“大客户”,对于大客户,可以甚至直接给他们出设计,包括硬件电路设计PCB LAYOUT以及软件配套开发。
所以其实行业就是这么肥事,有些东西真的不是靠技术,人家根本不看你公司里面有没有技术牛比的人,而是看你老板有没有马内,有马内了,原厂给你包工包料做好了给你,只要你有市场渠道卖的出去就好了
只要厂家提供文档,而不需要厂家技术支持。有问题,我更喜欢去社区寻求解决(而不是找原厂fae)
一个成熟的社区远比厂家fae更有作用。厂家只需要负责产品,文档提供。不需要对最终客户1对1的支持,真的不需要。厂家只要对top 10大客户自己支持就够,余下给到代理支持,至于个人玩家,diyer,学校的毕业设计的学生都不是厂家需要去技术支持的对象
但是对大客户支持不代表就拒绝小客户甚至终端开发者,如果这些人找原厂,应该指导他们寻求代理或者某些电商平台卖开发板的渠道寻求技术支持,当然这些代理或者开发板卖家都是原厂的下游客户,介绍了下游可能的生意,远比直接拒绝或者闷声不回复更有沟通技巧,更能获得用户支持。可能今天问你的这个人一穷二白,但是明天他可能就做起来了呢
以上我简单理解为:
1.板厂应该把打叉板(不良pcb)一起发给客户,如果客户有能力修复打叉板,那是客户的本事(或者打叉的断线不影响某个项目的实际功能,这部分段线本来就不贴料)。板厂留了客户的打叉板也没有意义,板厂即使保留也会用良品PCB做样品,打叉板没有必要保留。以上客户得利
2.但是,某些PCB即使是做坏的,也是有价值的(回收价值),例如沉金的不良PCB,因此板厂也可能不会把这些不良pcb发给客户。工厂卖给废品公司获得收益,以上两者都没有实质损失,客户没有少板,板厂也把做坏的板子卖钱了
3.板厂发的料不够,这必须是板厂责任,任何理由都不成立,客户损失,板厂损失更大(要二次生产,二次生产需要的成本比单次多生产更高),或许板厂也可以从即将报废的垃圾堆里面找到不良pcb,然后叫维修组线上rework把不良修复,但手工修复的会影响外观, 补线的地方要重新涂光固漆, 客户不一定会接受这种板.因此如出现这种情况,板厂肯定是大损失,后续客户也可能不会再找这个板厂合作!
个人考虑的国产FPGA选料设定原则:
1.价格是国外同类产品的50%以下(因为国产fpga设计IDE较弱,效率低于国外同行85%,造成研发成本和周期增加,如果只是物料价格低30%,最终不见得会省成本)
2.面向社区玩家(散户)可直接公开购买(都买不到料,我设计了你进来我难道是玩B站做科普培训视频来圈粉赚钱?)
3.一个产品从面世到EOF周期需10年以上(如果我设计了一个板子,过2年就买不到料了,同样造成重复开发,研发成本上升)
4.绝对不考虑一些只面向军工或者政府单位背景的国产FPGA公司(原因不方便说,我等小民不敢去碰红线)
好像筛选一下,合适的也没多少了.我只喜欢自下而上没有政府背景依靠自身技术独立做起的公司
也跟风做了一个,目前正在调试中(63mm*55mm)
https://whycan.com/files/members/3710/zynq.jpg
我喜欢你这个布局和走线
AGM虽然用了ALTERA的QUARTUS做综合,不过这里也不算完全侵权,综合器本来是大家都可以用的,很多IDE里面带的也是第三方综合器厂商的高效产品,比自己开发综合器编译效率更高的多。这里 QUARTUS做的非常好,各种优化选项设置一下综合出来网表基本上能扣出几十个SLICE粗来。或许AGM可以通过写SHELL脚本去调用,甚至抽出IDE里面的综合器出来,把约束设置文件也抽出来,不必要开QUARTUS界面来让用户感觉是在偷用A家开发软件。
倒是AGM的FITTER做的比较菜,这个时候,完全和QUARTUS的FITTER没的比,产生出来的最终LUT占用,效率低于A家IDE的15%(area/dencity优化下),很多altera的项目用到芯片资源99%的情况下,不得不扣代码砍掉部分以让agm最终布线通过
fpga还是有细分的,高端大规模fpga主要供应对象是芯片设计公司和国防军工单位,以及部分对算力需求大的特殊应用。这部分虽然量不多,但是利润非常大,fpga供应商不只是提供物料,更多的是提供技术服务,合作芯片开发,软硬件的一整套技术支持,甚至是为客户定制前端设计服务。这部分x厂a厂占据了绝对的江山。
中低端fpga其实才是商用/民用出货量大的地方,而低端fpga/cpld则利润已经很低。例如一些低于2美元的非易失性配置cpld,用量非常大,这部分lattice是占据了大头。中低端fpga使用灵活,价格合适,与专用asic相比价格也并非不可硬杠,依靠规模效应打击asic芯片。对于设计开发者,这种可编程器件节省了bom物料,简化了pcb布线成本,虽然提高了设计门槛,但也同时增加了产品利润空间和防盗门槛。这些还是很合适的。
如果不用cpld/fpga,一块板子能设计成巴掌大,四层,但是只需要一个io密集型的cpld,则就可以将板子走线简化到火柴盒大小的模块。
低端cpld/fpga的竞争对手,其实不是专用asic,而是另一个可怕的正在崛起的怪物,raspberry pico,其已经可以做到部分cpld能做的功能了,而且mcu内核又比某某32更强大。即使是带有硬mcu的融合型fpga,也碰到了一个强硬对手
诚然,确实有很多公司,里面不少工程师,出于对项目风险以及个人的职业安全度考量,在设计项目开端,叫原厂fae去check设计,并期望给于建议,这其实是一种职业型策略,因为项目是公司的,而个人在公司的职位晋升风险是自己的,所以多做保守的事情,把交代的事情都交代好,万一项目出现风险中途delay或者cancel也能尽最大可能让自己安全上岸,不至于为整个项目背锅。
但是,如果是个人社区玩家,他实行的是另一个策略,即我不会让你知道细节,但我只想要买你的片子。社区玩家里面部分是hacker,部分是从其他公司出来单干的,部分是从大公司退休的,他们出于更大的个人安全考虑(相对于在一家公司上班可能成为项目背锅侠而遭到老板开除,是更大的一种安全考虑,担心被某家公司告,又或者担心自己的项目被泄露而造成严重损失)。
所以,不同的开发人员,有不同的作业风格,传统的企业对企业接口需要前者策略,而个人开发者类似于象买春或者买毒一样,他不会少你的钱,但是销售不要多问,而且你不要给假货。
怎么说呢,感觉用国产FPGA厂家就象是相亲,本来是不一定想用的,抱着试试看的态度尝试一下,结果跑去,人家也不拒绝,但也不主动,很冷淡,有问题想问问原厂或者代理,他们回也不愿意回,一声不想的,问他怎么搞,开发环境搭建和开发过程基本都要自己主动吭生肉,甚至有些tool chain还很不完善,不得不自己重新写。
好像是他/她明明自身条件中等甚至中下,但也看不上你,时刻端着自己摆出一副姿态的样子,结果这样反复几次,很多人玩了半月就从憧憬到放弃了。
三大厂,对于个人玩家,就象是万人迷,而我们是他的粉丝,但是人家表现出来的却是大家闺秀的感觉,资料网站上非常详细,开发工具到app note很多,而且还有社区直接Q&A,也不需要什么公司备份资料再签NDA的流程,唯一就是不对你直接支持而已。但你可以强暴,什么都不要支持,自己就玩转起来,然后从流通市场购买,甚至从灰色市场购买(翻~新~片)
而国产FPGA厂家,就象是穷精致的女孩,自己条件一搬,所以喜欢拥抱大款,对吊丝个人开发者甩也不甩,你甚至连买片子的渠道都找不到,买个把片子可以,要多,就流程来了(好像是礼金一样)。甚至你有钱你也买不到。
摆脱,我有钱,我会找你穷精致的拜金女?拜金女最合适的出路就是给大款保养做备份,同样地,国产料基本就是给大公司做2nd source,平时不用你,在某个特殊的项目上用下你。
所以基本是这个情况,好像是还没有很好定位好
页次: 1