完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
原谅我的无知,但我是一个来自软件背景的FPGA的n00b。
就像这张表上5000张其他n00b海报一样,我想使用我的spartan-3e的以太网功能。 没有人在网上实际上有一个现成的复制/粘贴解决方案,这对我来说没问题。 我会做的工作并弄清楚。 我已经完成了很多功课,但总的来说我对一件事感到困惑...... 我知道有两种基本的方法可以使用以太网控制器:使用xilinx IDE提供的免费IP核,或者自己编写VHDL / verilog并正确地敲出MII接口。 后一种方法显然是一种皇家的痛苦,因为你必须计算校验和,否则操纵TCP / UDP数据包的可能性最低...... 我的问题是:我的应用程序要求以尽可能低的开销来处理数据包。 如果我不需要,我甚至不想等待一个额外的时钟周期。 我的理解是,你放在FPGA上的任何*核心*实际上都是一个“软核”处理器,换句话说,存在来自这些不同IP核的强大功能,因为FPGA是用VHDL指令编程的,模拟比如说 一个8086 CPU基本上运行用C或程序集编写的虚拟8086程序,因为使用这些语言要比VHDL容易得多。 那是对的吗 ? 如果是这样,这是否意味着我希望我的整体网络性能比我自己直接写入处理的速度慢? 如果没有,那么“核心”可以与直接VHDL程序共存,就像我链接到C中的外部符号一样吗? 或核心消耗整个芯片? 感谢您抽出宝贵时间回复n00b。 我很感激。 -n00b 以上来自于谷歌翻译 以下为原文 forgive my ignorance but I'm a n00b to FPGA coming from a software background. Just like 5000 other n00b posters on this form, I want to use the ethernet capabilities of my spartan-3e. Nobody online actually has a ready-made copy/paste solution for this, and that's ok by me. I'll do the work and figure it out. I've already done a lot of the homework, but I'm confused about one thing in general... I'm aware that there are two fundamental ways to use the ethernet controller: using the free IP core that xilinx's IDE offers, or writing VHDL/verilog myself and correctly banging out an MII interface. The latter method is a royal pain apparently because you have to calculate checksums and otherwise manipulate TCP/UDP packets at about the lowest level possible... My question is this: My application requires packets to be processed with the lowest amount of overhead possible. I don't even want to have to wait one extra clock cycle if I don't have to. My understand was that any *core* that you put on an FPGA is effectively a "soft-core" processor, in other words, the robust functionality from these various IP cores exists because the FPGA is programmed with VHDL instructions that simulate, say, an 8086 CPU that basically run a program written in C or assembly for this virtual 8086, since it's a lot easier to use these languages than VHDL. Is that correct ? If so, does that mean I would expect my overall network performance to be slower than if I wrote the processing myself in straight-vhdl ? If not, then can a "core" coexist with a straight VHDL program, the same way as I would link to an external symbol in C ? Or does the core consume the whole chip ? Thank you for taking the time to respond to a n00b. I appreciate it. -n00b |
|
相关推荐
47个回答
|
|
xilinx_temp_9099写道:
原谅我的无知,但我是一个来自软件背景的FPGA的n00b。 简而言之,硬件设计和软件设计是完全不同的学科。 FPGA设计是数字硬件设计。 它使用“语言”作为设计输入方法(它是“硬件描述语言”)的事实并不意味着它仍然不是硬件设计。 这个论坛以及comp.arch.fpga充满了来自软件的帖子 那些认为他们可以将代码翻译成某些东西的人 在FPGA上运行。 这种妄想是否来自他们的论文顾问(他们应该排在墙上并且被打破),或者来自FPGA供应商自己的广告,还是来自“Verilog就像C”的显而易见的荒谬观念,我不知道, 但它很疯狂。 因此,当有人说“我可以执行TCP / IP堆栈的FPGA实现”时,灰白的硬件老手不得不笑,因为TCP / IP堆栈最适合在标准顺序执行处理器中实现。 这些头发花白的硬件老手会问,“那么,这个TCP / IP堆栈的内存占用量是多少”,并找出哪种嵌入式处理器最适合特定的实现,并从那里开始。 这并不是说一些程序员可以成为相当优秀的FPGA设计工程师。 而且,并不是说FPGA人员可以成为相当优秀的应用程序级程序员。 但这两种技能没有什么共同之处。 祝你好运。 ----------------------------是的,我这样做是为了谋生。 在原帖中查看解决方案 以上来自于谷歌翻译 以下为原文 xilinx_temp_9099 wrote: The short answer is that hardware design and software design are completely different disciplines. FPGA design is digital hardware design. The fact that it uses a "language" as the design-entry method (it's a "hardware description language") doesn't mean that it's still not hardware design. This forum, as well as comp.arch.fpga, is full of postings from software people who think they can just translate their code into something that runs on an FPGA. Whether this delusion comes from their thesis advisors (who oughta be lined up against the wall and smacked), or from the FPGA vendors' own advertising, or from the patently absurd notion that "Verilog is like C," I don't know, but it's crazy. So when someone says, "can I do an FPGA implementation of a TCP/IP stack," the grizzled hardware veterans have to laugh, because a TCP/IP stack is something that gets best implemented in a standard sequential-execution processor. And these grizzled hardware veterans would ask, "so, what's the memory footprint of this TCP/IP stack," and figure out what embedded processor would work best for the specific implementation, and go from there. This is all not to say that some programmers can become quite good FPGA design engineers. And it's also not to say that FPGA guys can become quite good application-level programmers. But the two skill sets have little in common. Good luck. ----------------------------Yes, I do this for a living.View solution in original post |
|
|
|
你不是第一个提出这些问题的人。
绝对值得您花时间在社区搜索“IP堆栈”,您会在很短的时间内找到一些非常有用的信息。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 以上来自于谷歌翻译 以下为原文 You are not the first person to ask these questions. It's definitely worth your time to search the Community for "IP stack", and you will find some very useful information in very short order. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
谢谢,这让我了解了我已经知道的信息:xilinx工具非常缺陷,xilinx的客户支持很差,而且我可以使用以太网核心来使PHY工作。
没有任何说明你是否可以使用自己的VHDL代码和核心。 看,问题越普遍,就像我的一样,搜索起来就越困难。 我知道有以太网核心,但正如我的问题所说,我需要最快的解决方案。 我找到了一个解决方案(来自非xilinx提供商 - opencores),需要使用“mig”ram工具,但当我尝试运行它为我的主板模型时,它拒绝正确完成并给我我的UCF和其他文件 。 这可能是由于另一个xilinx软件错误而且非常遗憾。 想想他们本可以节省开发那些漂亮的“评估”板的所有资金,如果他们只是焊接可以实际使用他们的工具的组件! 你有什么其他建议可以浪费我更多的时间告诉我我已经知道的事情吗? 或者下载不起作用的千兆字节的臃肿的java代码? 或者是否有另外一个昂贵的“评估”板,我可以购买哪些更多的组件不能用于它? 也许我只需要升级? 以上来自于谷歌翻译 以下为原文 Thanks, that led me to info that I already knew: xilinx tools are notoriously buggy, xilinx has poor customer support, and that I could use an ethernet core to make the PHY work. Nothing there said whether you can use your own VHDL code along with a core. See, the more general a question, like mine, the harder it is to search for. I'm aware there are ethernet cores, but as my question said, I need the quickest solution. I found a solution (from a non-xilinx provider - opencores ) that required using the "mig" ram tool, but when I tried running it for the model of my board, it refused to finish correctly and give me my UCF and other files. This is probably due to another xilinx software bug and is quite a shame. Think of all the money they could have saved developing that spiffy "evaluation" board if they only soldered on the components that could actually work with their tools ! Do you have any other suggestions that could waste some more of my time telling me things I already know ? Or downloading gigabytes of bloated java code that doesn't work ? Or is there another expensive "evaluation" board I can buy that has even more components that don't work on it ? Maybe I just need to upgrade ? |
|
|
|
哎呀,你肯定知道如何赢得朋友,不是吗?
你有一个悲惨的一天,或者什么? 如果你花了一些宝贵的时间阅读最近的帖子,你可能已经学到了一两件事。 特别: 1. MIG生成内存控制器,而不是MAC,而不是硬件中的TCP / IP“堆栈”。 2.你可以尝试在硬连线控制器中实现一个数据包处理程序,但是当你完成所有工作时,这将是一个单调乏味的工具。当你完成时,你将成为一个古老,卑鄙,狡猾的家伙。 嗯......听起来你已经尝试过了。 3.搜索建议,查找它们: “ip stack” “以太网精简版” “lwip stack” “treck stack” 4.当你确信自己并不真的想在硬件中设计TCP / IP引擎时,是时候到处寻找处理器来运行传统的TCP / IP堆栈了。 可能的选择是MicroBlaze和PPC。 如果你喜欢SPARC,还有莱昂。 我相信你可以搜索这些物品并找不到任何有用的东西,但它会让你忙碌一两个小时,这本身就是值得的。 5.我希望你自己编写TCP / IP堆栈。 这应该让你忙碌几个月。 顺便说一下,我不为Xilinx工作,所以你不能责怪Xilinx在试图帮助你的过程中损害了我的原则。 祝你好运。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 以上来自于谷歌翻译 以下为原文 Gee, you sure know how to win friends, don't you? Are you having a miserable day, or what? If you had taken some of your valuable time to read recent posts, you might have learned a thing or two. Specifically: 1. MIG generates memory controllers, not a MAC, and not a TCP/IP "stack" in hardware. 2. You can try to implement a packet handler in a hard-wired controller, but it will be tedious as all get out and you'll be an old, mean, crotchety guy when you're done. Hmmm... sounds like you've already tried this. 3. Search suggestions, look them up: "ip stack" "ethernet lite" "lwip stack" "treck stack" 4. When you've convinced yourself you don't really want to design an TCP/IP engine in HW, it's time to shop around for a processor to run a conventional TCP/IP stack. The likely choices are MicroBlaze and PPC. If you like SPARC, there's also Leon. I'm sure you can search these items and find nothing useful, but it will keep you busy for an hour or two, and that's worth it all by itself. 5. I hope you write your own TCP/IP stack. That should keep you busy and off these boards for months. And by the way, I don't work for Xilinx, so you can't blame Xilinx for having compromised my principles in trying to help you. Good luck. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
None
以上来自于谷歌翻译 以下为原文 Thanks, that led me to info that I already knew: xilinx tools are notoriously buggy, xilinx has poor customer support, and that I could use an ethernet core to make the PHY work.Since it is in the middle of the night on a weekend, here in the USA, I will take this opportunity to deliver user xilinx_temp_9099 a sorely needed dose of reality. 1. If you want to limit yourself to bug-free tools, you've come to the wrong place, and you are being dishonest with yourself and to this forum. It takes gobs of time and money to eliminate all the bugs in any complex set of software. I sincerely doubt that you are willing to wait as long as it would take to achieve "bug-free" condition -- I know I wouldn't. There are tradeoffs to be made between "bug free and feature rich", "gotta have it now", and cost. This is true in the silicon, it's true in your designs (as well as mine), and it's true in the design tools software. Yeah, I want bug-free tools -- we all do. But many of us (myself included) are unwilling to wait around for the time it would take, and many of us (myself included) would be unwilling to pay what a "bug-free" effort would cost. That goes for the Xilinx customers (and Altera customers), and it also goes for OUR customers. 2. Sometimes what we want isn't "bug-free", but "no surprises". Bug-free for any complex product is practically unattainable and most certainly commercially non-viable (give or take the space program, and even there we have risks and history which prove my point). Instead, we settle for a mature product where the bugs are known and documented, and the weak spots of the design tools are also well known. Today, if you're risk averse, there's Spartan 3 generation (instead of Spartan 6) and ISE 11 (instead of ISE 12) and Windows XP 32-bit (instead of Win7 64bit). Your choice. If life on the leading and bleeding edge is wearing you down, then ease off on the technology gas-pedal. 3. Let's talk about Xilinx support. First, general principles. Let's keep in mind that constantly changing software and silicon means that the Xilinx apps folks are never, ever going to be "caught up" with the latest products, software, and applications. It's not possible, so it's not worth debating the point. If you want the most complete tech support, then stick to mature products where the support folks and the knowledge base has had time to catch up to the tools and the silicon (see point #2 above). Let others blaze the trails and take the arrows. 4. Let's talk about Xilinx support. The people. If you want to make the best use of Xilinx tech support on the latest tools and products, you need to be smart. You learn as much as you can on your own and you learn as much as you can from others. When you seek advice and guidance from the Xilinx support folks, don't poison the well with whining, impatience, ranting, and being close-minded. People will eventually tune you out, and that's pretty much true in life (not just in the world of FPGAs). Patience, mutual respect, clear communications, willingness to contribute effort, and a sense of humour will get you far (and not just in the world of FPGAs). And humility. Humility helps a whole lot. We all make mistakes, we all have bad days. Sometimes you need to forgive or apologize and move on. And don't forget to say "thanks" for the help. It always helps when your effort is appreciated. 5. Xilinx support: using the forums. These forums. These forums are a good example of a public discussion space where you can learn from others' experiences and expertise. Some of the answers you want may not be handed to you on a silver platter, but there's a whole lot of information available, and there are tools (search, for one) for sifting through the pile. You can also discern which features are not "fully baked" yet. These include silicon with new errata and new speed files, features where the user guides and documentation are still being filled in and updated, and where forum questions don't have quick and concise answers. Use the forums to figure out which applications and features involve more design risk than you are willing to accept, and stay away from those areas (getting back to point #2, again). Another good use for the forums is to help figure out who, out of all the Xilinx support folks, are the most knowledgeable in your problem area. That's probably enough bloviating on my part. When xilinx_temp_9099 showed up with a rant and a rave and a chip on his shoulder, that got me going. He may not feel better after reading this, but I sure feel better getting this off my chest. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
你是对的,我的回答是不合时宜的,特别是对于花时间提供帮助的志愿者。
请接受我的道歉。 我第一次搜索时,确实得知VHDL中的全功能堆栈是不可能的,尤其是我的技能水平。 所以这意味着我将使用核心。 至于他们工具中的缺陷率,听起来你正在制作“开源”类型的论点,我们应该感谢我们所拥有的,除了这些工具不是开源的。 Xilinx的市值为70亿美元。 我为我的入门套件和软件工具支付了几百美元,而我发送的那些钱并没有缺陷,所以我认为期望他们的产品也不合适。 当你看看他们用他们的产品包装了多少内容保护时,它只会使情况变得更糟。 如果他们将一半的精力投入到内容保护中的软件质量怎么办? 因此,我们都必须使用“无意外”的错误产品来支付内容保护费用。 我只是说它不一定是这样的。 而FWIW我正在使用v 10.1的工具,应用了超过2GB的补丁和“更新”。 以上来自于谷歌翻译 以下为原文 you're right, my response was out-of-line, particularly for a volunteer who took the time to help. Please accept my apologies. The first time I searched I did get the inkling that a full-featured stack in VHDL was going to be out of the question, particularly with my skill level. So that pretty much means I will be using a core. As to the defect rate in their tools, it sounds like you're making the "open-source" type of argument that we should just be thankful for what we have, except that these tools aren't open-source. Xilinx has a market capitalization of $7bn. I paid a couple hundred dollars for my starter kit and software tools and those dollars I sent were not defective, so I think it's reasonable to expect their product to not be either. It only makes the situation worse when you look at how much content protection they pack with their product. What if they put half the effort into software quality that they did into content protection ? So instead we all pay for their content protection by having to use a "no-surprises" buggy product. All I'm saying is that it doesn't have to be this way. And FWIW I'm using v 10.1 of their tools with over 2gb of patches and "updates" applied. |
|
|
|
eteam00写道:他的肩膀上有一块芯片,
实际上,我在Xilinx FPGA论坛上展示了一块芯片。 :smileyhappy: 以上来自于谷歌翻译 以下为原文 eteam00 wrote: and a chip on his shoulder,Indeed, I showed up to the Xilinx FPGA forum with a chip on my shoulder. :smileyhappy: |
|
|
|
阿德里安:哦,哦,埃尔金德先生,哦,埃尔金德先生!
*快照手指* 埃尔金德先生:*犹豫不决*是的,这是什么,阿德里安? 阿德里安:我有一些事要补充! Elkind先生:*叹气* [对自己]我会后悔这个......来吧! 阿德里安:xilinx_temp_9099,你已经表明你对整个主题都缺乏经验,因为你可以从你自己的无能中可靠地辨别出一个天才软件漏洞。 根据经验,在您学习的阶段,您遇到问题的可能性要大于工具的问题。 并回答你的一个非暴力问题:如果你是“FPGA n00b”,那么你无法通过从头开始编写更高性能的TCP / IP堆栈。 此外,你会在其中工作很多错误(万一你应该完成)。 阿德里安 请在询问之前先查询您的问题。如果有人回答您的问题,请在“接受为解决方案”标记该帖子。 如果你看到一个特别好的和信息丰富的帖子,考虑给它Kudos(左边的星)。 以上来自于谷歌翻译 以下为原文 Adrian: Ooh, ooh, Mr. Elkind, ooh, Mr. Elkind! *snaps fingers* Mr. Elkind: *hesitates* Yes, what is it, Adrian? Adrian: I've got something to add! Mr. Elkind: *sighs* [to himself] I'm going to regret this... Go ahead! Adrian: xilinx_temp_9099, you have shown that you're much too inexperienced with the whole subject matter as that you could reliably discern a geniune software bug from your own incompetence. As a rule of thumb, at your stage of learning, it's a lot more likely that you're the problem than that the tools are the problem. And to answer one of your non-rant questions: if you're an "FPGA n00b", then there's no way that you'll be able to make a more performant TCP/IP stack by writing it from scratch. Plus you'll work a lot of bugs into it (in case you should ever finish). Adrian Please google your question before asking it. If someone answers your question, mark the post with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left). |
|
|
|
阿德里安,那太可笑了。
我喜欢。 这是我们尚未见过的一面。 我应该将droll wit添加到我所有FPGA设计人员所需的字符属性列表中。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 以上来自于谷歌翻译 以下为原文 Adrian, that was quite droll. I like it. This is a side of you we've not yet seen. I should add droll wit to my list of character attributes required of all FPGA designers. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
阿德里安,那太可笑了。
我喜欢。 这是我们尚未见过的一面。 那只是因为我经常试图将它保持在这里的专业水平。 然而,德国啤酒(在这种情况下,“Karl***erg Weizen”)似乎放松了我的抑制:smileywink: 我应该将droll wit添加到我所有FPGA设计人员所需的字符属性列表中。 我同意! 使用FPGA设计,它与学校教学相同:几年后,您将采取以下道路之一: 烧完 发展讽刺或强烈的幽默感 发展出一种强烈的虐待狂倾向 阿德里安 请在询问之前先查询您的问题。如果有人回答您的问题,请在“接受为解决方案”标记该帖子。 如果你看到一个特别好的和信息丰富的帖子,考虑给它Kudos(左边的星)。 以上来自于谷歌翻译 以下为原文 Adrian, that was quite droll. I like it. This is a side of you we've not yet seen.That's just because I usually try to keep it on a professional level around here. However, the German beer ("Karl***erg Weizen", in this case) seems to have loosened my inhibitions :smileywink: I should add droll wit to my list of character attributes required of all FPGA designers. I agree! With FPGA design, it's the same as with teaching at schools: after a couple of years, you're gonna take one of the following roads:
Adrian Please google your question before asking it. If someone answers your question, mark the post with "Accept as solution". If you see a particularly good and informative post, consider giving it Kudos (the star on the left). |
|
|
|
多谢你们。
所以我是问题,因为我没经验,也不知道我在做什么。 但是我有一点经验,就是搞清楚并使用在线论坛。 如果您将此xilinx论坛与任何其他技术/ DIY论坛进行比较,您将会看到您的态度是多么精英。 我问了一个简单的表现问题(从未回答过),并被告知要搜索论坛,由已经清楚知道答案的人进行搜索。 我已经多次搜索谷歌来解决这个问题,但还没有找到完整的解决方案。 如果我说过“我怎么用VHDL点亮二极管6”我可以看到告诉这个人自己做基础工作,但是当我清楚地说我知道以太网核心和关于vhdl时,告诉我搜索论坛 解决方案(在fpga4fun上,其名称可能有更少的精英主义者在那里做贡献)表明,“志愿者”海报喜欢为人们分配工作而不是帮助他们。 我买了一本VHDL书,以为我会安装xilinx的工具并开始编写设计并最终升级到MII phy,然后问我的问题,因为这是不是很清楚它是否可以完成。 然后我被告知“继续搜索”。 让我举一个例子,说明如何以非骚扰的方式回答我的问题,以防万一其他人想知道同样的事情: “:从头开始在VHDL中运行完整的以太网堆栈比它看起来要先进得多。当你从物理层通过链路和网络层向上移动水平时,特别难以使状态正确。你作为一个n00b 可能无法从头开始编写你的产品,因此只需专注于使用xilinx的IP核解决方案来实现您的设计“。 这是一个论坛,您可以搜索其他非傲慢的海报,通过硬件/软件开发在各个层面互相帮助: http://www.avrfreaks.net/index.php?name=PNphpBB2&file=index 搜索“n00b”并观察人们如何一起工作(有点像FPGA设计的大门=))而不是互相獾。 另请注意,avr-gcc工具链......有效! 它没有段错误,用完RAM和关机,需要千兆字节的无用更新,或者发出无法理解的错误消息。 而且,最好的部分,它是免费的。 在你指责我不知道AVR和FPGA之间的区别之前,我想我必须证明我确实知道其中的差异,而我正在使用它作为功能在线社区的一个例子。 以上来自于谷歌翻译 以下为原文 Thanks guys. So I'm the problem because I'm inexperienced and don't know what I'm doing. But there is one thing I am experienced with, which is figuring things out and using online forums. If you compare this xilinx forum with any other tech/DIY forums, you will see just how elitist your attitudes are. I asked a simple performance question (which was never answered ) and was told to go search the forum, by someone who clearly knew the answer already. I have searched google many times to figure this out and have not found a complete solution. If I had said "how do I make diode 6 light up in VHDL" I can see telling the person to do the ground work themselves, but telling me to search the forum when I clearly said I knew about the ethernet core and about a vhdl solution ( which is on fpga4fun, which by its name probably has alot fewer elitists contributing there ) shows that the "volunteer" poster enjoys assigning work to people more than helping them. I bought a VHDL book thinking I would install xilinx's tools and start writing designs and eventually advance up to the MII phy, and asked my question because this wasn't becoming clear whether or not it can be done. Then I was told "keep searching". Let me give you an example on how to answer my question in a non-arrogrant way, just in case someone else is wondering the same thing: " Here's a forum you can search to see other non-arrogant posters helping each other out at various levels with hardware/software development: http://www.avrfreaks.net/index.php?name=PNphpBB2&file=index Search for "n00b" and observe how people work together ( kind of like the gates of an FPGA design =) ) instead of badger each other. Notice also that the avr-gcc toolchain...works! it doesn't segfault, run out of ram and shutdown, require gigabytes of useless updates, or spew unintelligible error messages. And, the best part, it's free. Before you accuse me of not knowing the difference between an AVR and and FPGA, I guess I have to prove that I do in fact know the difference, and I'm using this as an example of a functional online community. |
|
|
|
多谢你们。
所以我是问题,因为我没经验,也不知道我在做什么。 不一定,但你的态度肯定不好。 我问了一个简单的性能问题(从未回答过)和 有人被告知要清楚地知道答案的人去搜索论坛 已经。 如果你指的是我,那你就错了。 我不是MAC设计师,我不编写TCP / IP代码。 但我知道MAC核心是一个经常讨论的话题,我知道在硬件而不是SW中实现完整的TCP / IP堆栈是一项艰巨的任务,所以我建议你搜索论坛来评估你自己的选择。 如果您希望我代表您搜索论坛,然后向您提供一系列有趣的主题链接,那么您的期望就太高了。 作为一个非专家,并且不确定您的兴趣和倾向,需求和能力的确切范围,简单地向您推进正确的方向似乎是谨慎的。 你对此的回应不太亲切。 从您的帖子中可以看出,您在这些论坛或其他网站上找到了您要查找的信息。 你在另一个论坛上收到的建议是我认为你应该自己做出的结论,而不是接受别人的判断。 如果你认为这证明了我的精英主义态度,我认为你从根本上误解了我。 如果你从我的着作中得出结论,我不鼓励傲慢,推定和粗暴行为 - 那么你(至少在某种程度上)对我的理解就足够了。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 以上来自于谷歌翻译 以下为原文 Thanks guys. So I'm the problem because I'm inexperienced and don't know what I'm doing.Not necessarily, but you certainly have a bad attitude. I asked a simple performance question (which was never answered ) and was told to go search the forum, by someone who clearly knew the answer already.If you are referring to me, you are mistaken. I'm not a MAC designer, and I don't write TCP/IP code. But I knew that MAC core is a frequent discussion topic and I knew that implementing a full TCP/IP stack in hardware rather than SW is a daunting task, so I advised you to search the forums to evaluate your options for yourself. If you expected me to search the forums on your behalf and then present you with a distilled list of interesting topics links, your expectations were too high. As a non-expert, and being uncertain of the precise scope of your interest and inclinations and needs and abilities, it seemed prudent to simply nudge you in the right direction. Your response to this was less than cordial. It appears from your postings that you found the information for which you were seeking, either in these forums or on a different site. The advice you received on another forum is a conclusion which I would think you should make on your own, rather than accept someone else's judgement. If you consider this to evidence an elitist attitude on my part, I think you've fundamentally misread me. If you conclude from my writings that I discourage arrogance, presumption, and boorish behaviour -- then you (at least in part) understand me well enough. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
Droll Wit yay:smileyhappy:
好吧,这一定是我多年来读过的最有趣的主题,感谢让我微笑...... 9099,明白你只是在论坛上侮辱了最有帮助的,可能是最善良的人。 就个人而言,我阅读了你的求助请求,并想到了“哦,另一个程序员”并转向页面。 在没有侮辱你的情况下很难向你解释这一点,所以我不会打扰....... Bobster 以上来自于谷歌翻译 以下为原文 Droll Wit yay :smileyhappy: Well this has to be the funniest thread I’ve read in ages, thanks for making me smile.... 9099, do understand that you just insulted the most helpful, possibly the kindest people on the forum. Personally I read your request for help, and thought “oh another programmer” and turned the page. It’s hard to explain this to you without insulting you so I won’t bother....... Bobster |
|
|
|
最有帮助的,可能是论坛上最善良的人
代表我的同事们,你没有提到我们粗犷的外表和敏锐的时尚感。 - 鲍勃埃尔金德 签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。 阅读手册或用户指南。 你读过手册了吗? 你能找到手册吗?2。 搜索论坛(并搜索网页)以寻找类似的主题。 不要在多个论坛上发布相同的问题。 不要在别人的主题上发布新主题或问题,开始新的主题!5。 学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。 提供有用的详细信息(请与网页,数据表链接).7。 您的代码中的评论不需要支付额外费用。 我没有支付论坛帖子的费用。 如果我写一篇好文章,那么我一无所获。 以上来自于谷歌翻译 以下为原文 the most helpful, possibly the kindest people on the forumOn behalf of my colleagues, you failed to mention our rugged good looks and keen fashion sense. - Bob Elkind SIGNATURE: README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369 Summary: 1. Read the manual or user guide. Have you read the manual? Can you find the manual? 2. Search the forums (and search the web) for similar topics. 3. Do not post the same question on multiple forums. 4. Do not post a new topic or question on someone else's thread, start a new thread! 5. Students: Copying code is not the same as learning to design. 6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please). 7. You are not charged extra fees for comments in your code. 8. I am not paid for forum posts. If I write a good post, then I have been good for nothing. |
|
|
|
xilinx_temp_9099写道:
原谅我的无知,但我是一个来自软件背景的FPGA的n00b。 简而言之,硬件设计和软件设计是完全不同的学科。 FPGA设计是数字硬件设计。 它使用“语言”作为设计输入方法(它是“硬件描述语言”)的事实并不意味着它仍然不是硬件设计。 这个论坛以及comp.arch.fpga充满了来自软件的帖子 那些认为他们可以将代码翻译成某些东西的人 在FPGA上运行。 这种妄想是否来自他们的论文顾问(他们应该排在墙上并且被打破),或者来自FPGA供应商自己的广告,还是来自“Verilog就像C”的显而易见的荒谬观念,我不知道, 但它很疯狂。 因此,当有人说“我可以执行TCP / IP堆栈的FPGA实现”时,灰白的硬件老手不得不笑,因为TCP / IP堆栈最适合在标准顺序执行处理器中实现。 这些头发花白的硬件老手会问,“那么,这个TCP / IP堆栈的内存占用量是多少”,并找出哪种嵌入式处理器最适合特定的实现,并从那里开始。 这并不是说一些程序员可以成为相当优秀的FPGA设计工程师。 而且,并不是说FPGA人员可以成为相当优秀的应用程序级程序员。 但这两种技能没有什么共同之处。 祝你好运。 ----------------------------是的,我这样做是为了谋生。 以上来自于谷歌翻译 以下为原文 xilinx_temp_9099 wrote: The short answer is that hardware design and software design are completely different disciplines. FPGA design is digital hardware design. The fact that it uses a "language" as the design-entry method (it's a "hardware description language") doesn't mean that it's still not hardware design. This forum, as well as comp.arch.fpga, is full of postings from software people who think they can just translate their code into something that runs on an FPGA. Whether this delusion comes from their thesis advisors (who oughta be lined up against the wall and smacked), or from the FPGA vendors' own advertising, or from the patently absurd notion that "Verilog is like C," I don't know, but it's crazy. So when someone says, "can I do an FPGA implementation of a TCP/IP stack," the grizzled hardware veterans have to laugh, because a TCP/IP stack is something that gets best implemented in a standard sequential-execution processor. And these grizzled hardware veterans would ask, "so, what's the memory footprint of this TCP/IP stack," and figure out what embedded processor would work best for the specific implementation, and go from there. This is all not to say that some programmers can become quite good FPGA design engineers. And it's also not to say that FPGA guys can become quite good application-level programmers. But the two skill sets have little in common. Good luck. ----------------------------Yes, I do this for a living. |
|
|
|
xilinx_temp_9099写道:
这是一个论坛,您可以搜索其他非傲慢的海报,通过硬件/软件开发在各个层面互相帮助: http://www.avrfreaks.net/index.php?name=PNphpBB2&file=index avrfreaks主要是关于想要用小型微控制器做事的人。 大多数这些应用程序都相当简单。 设计输入选项是汇编语言或C.似乎大多数业余爱好者都实现了相同类型的项目。 那没关系。 对于具有编程背景的业余爱好者来说,微控制器非常容易,如果他可以购买带LED或液晶显示器或其他外围设备的小型入门套件,那么它就很容易上手了。 (当然,Windows程序员总是无法进入有限代码空间的思维模式以及嵌入式微控制器开发的其他一切。) 现在把自己放在我们的鞋子里。 想象一下,有一个支持论坛,大多数海报都会提出可以归结为“gimme code”的问题。 而更糟糕的是,要求代码的人并不知道究竟是什么进入了特定的“IP核心”。 对于这些驱动器新手来说,USB从接口核心并不比SPI接口复杂或复杂。 他们总是在提出要求时说“我是n00b”,这是代码,“我下周要完成一份家庭作业,我甚至不应该参加工程计划。” FPGA设计更加广泛。 我们使用它们来实现运行图像传感器所需的所有逻辑。 其他人可能使用完全相同的设备(当然使用不同的外围设备)来实现数字音频混合器和处理器。 对我们来说,FPGA只是一种更好的数字设计方式。 没有包装板充满74xx或CMOS 4000系列逻辑器件。 我们不这样做是一种爱好。 这是我们的工作。 祝你好运。 ----------------------------是的,我这样做是为了谋生。 以上来自于谷歌翻译 以下为原文 xilinx_temp_9099 wrote: avrfreaks is mostly about people who want to do things with small microcontrollers. Most of these applications are fairly simple. The design-entry options are either assembly language or C. It seems like most hobbyists implement the same sort of projects. And that's fine. Microcontrollers are easy enough for the hobbyist who has a programming background, and if he can buy a small starter kit with LEDs or an LCD or some other peripherals, it's easy enough to get started. (Of course there's always the Windows programmer who can't get into the mindset of limited code space and everything else that goes along with embedded microcontroller development.) Now put yourself in our shoes. Imagine that there's a support forum and the majority of posters ask questions that can be boiled down to, "gimme code." And what's worse is that the person asking for code has no idea about really what goes into a particular "IP core." To these drive-by newbies, a USB slave interface core is no more or less complicated than an SPI interface. They always preface their request by saying, "I'm a n00b," which is code for, "I have a homework assignment due next week and I shouldn't even be in an engineering program." FPGA design is a lot more wide open. We use them to implement all of the logic required to run image sensors. Others may use the exact same devices (certainly with different peripherals) to implement digital-audio mixers and processors. To us, the FPGA is just a better way to do digital design. No wirewrapping boards full of 74xx or CMOS 4000-series logic devices. We don't do this as a hobby. It's our job. Good luck. ----------------------------Yes, I do this for a living. |
|
|
|
的Bassman,
感谢您的直接回复。 我认为你做了一个完美的工作,总结了这种情况以及它为什么会沸腾。 我对自己的反应感到有些惭愧,并让它升级为它所做的事情,但我认为这个论坛应该得到一个快速的屁股。 我已经研究了几个月了,我可以说xilinx论坛在网络上落后于其他人。 诚实并称自己为n00b显然会让专家视线而拒绝提供帮助。 我很高兴我的问题给了他们拒绝的机会,所以他们可以通过他们迫切需要的大量提升来支持他们的自我。 我只能说,我是诚实的,并解释了我的情况。 我之前已经阅读过这里的消息以及想要帮助他们完成家庭作业的孩子,不幸的是他们中的一些人似乎不愿意工作。 我只能说,一个努力学习和享受他对技术的热爱的n00b和一个试图欺骗/避免学习的孩子之间存在差异。 我想在硬件与软件理念中加入这一点:如果你进入一个C ++用户帮助论坛,并提出一个相对难度相等的问题,那么你会对人们的帮助感到惊讶。 一般来说,称自己为n00b实际上鼓励回复和耐心。 我的错误在于假设参与这一领域的人对学习和分享技术抱有同样的热情。 如果你去那里并要求一个多线程程序,网络套接字示例或STL容器示例的例子,大多数人会很乐意交出它而没有严格的规则,他们完全理解它的作用。 在软件中,可以不知道代码的作用,读取它,然后理解它。 我没有看到任何理由为什么这里的人会反感这种做法。 我们将基本技术概念视为商品。 我们不关心是谁编写它们或花了多长时间,一旦目标建立并且代码是开源的,我们就分享它。 这反过来又使我们能够推进技术发展,而不是等到VP 3层管理层为hw小组分配一个新项目。 看起来VHDL的硬件态度比我习以为常的几十年。 对我而言,一项已有30年历史的技术TCP / IP是一种商品,我仍然傻眼了,为什么没有一个可以打我板的工作实例。 这也是我对其附带的垃圾软件进行抨击的动力,但我已经确定了这一点。 这并不意味着我不愿意学习。 我有一本VHDL书,并且有充分的意图来弄清楚我需要什么。 我只是不明白为什么我应该学习一些商品化的东西。 我想扩展已经存在的功能,而不是重做一遍又一遍的重做。 很明显,有些人有兴趣让tcp / ip工作,有人应该发布设计文件,这样有人可以即插即用,但你的集体自豪感让你无法做到这一点。 我不尊重这个决定,但我无能为力。 玩得开心。 感谢您作为硬件工程师洞察生活。 以上来自于谷歌翻译 以下为原文 Bassman, Thank you for your straight-to-the-point reply. I think you did a perfect job summarizing this situation and why it boiled over. I'm somewhat ashamed of my response and letting it escalate into what it did, but I think this forum deserved a swift kick in the butt. I've been researching this for a few months now, and I can say that the xilinx forum lags way behind others on the net. Being honest and calling myself a n00b obviously makes experts look away and refuse to help. I'm glad my question gave them the opportunity of refusal so they could prop their egoes up with the hefty exaltation that they desperately need. All I can say is at least I was honest and explained my situation. I have read messages here before as well with kids wanting help on their homework and it is unfortunate that some of them don't seem willing to work. All I can say is that there is a difference between a n00b who is trying to learn and enjoy his love of technology and a kid that is trying to cheat / avoid studying. I want to add this point to the hardware vs software philosophies: if you go into a C++ user help forum and ask a question equal in relative difficulty to mine, you will be amazed as to how helpful people are. Calling yourself a n00b actually encourages replies and patience, in general. My mistake was assuming people who are involved in this field have the same passion for learning and sharing technology. If you go in there and ask for an example of a multi-threaded program, of a network socket example, or an STL container example, most people will happily hand it over without the strict abritrary rule that they understand exactly what it does first. In software, it's ok to not know what code does, read it, and then understand it. I didn't see any reason why people here would resent this practice. We see basic technological concepts as commodities. We don't care who wrote them or how long it took, once the goal has been established and the code is open source, we share it. This in turn allows us to advance technology, not sit and wait until some VP 3 layers of management up assigns the hw group a new project. It seems the VHDL hardware attitude is decades behind what I'm accustomed to. To me, TCP/IP, a 30-year-old technology, is a commodity, and I'm still dumbfounded as to why there's not a working example that I can slap onto my board. That is also my impetus for railing against the crap software that it came with, but I've already established that. That does NOT mean I'm unwilling to learn. I got a VHDL book and have full intentions of figuring out what I need to. I just don't see why I should have to learn something that has been commoditized. I want to extend a functionality that already exists, not redo something that has been done over and over again. Clearly enough people are interested in getting tcp/ip to work that someone should just post the design files so someone can just plug-and-play, but your collective pride is keeping you from doing that. I don't respect that decision, but there's nothing I can do about it. Have fun guys. Thanks for the insight into life as a hardware engineer. |
|
|
|
xilinx_temp_9099写道:
对我而言,一项已有30年历史的技术TCP / IP是一种商品,我仍然傻眼了,为什么没有一个可以打我板的工作实例。 看,你陷入了陷阱。 没有“TCP / IP的工作示例”的原因 - 在硬件中,这是我对你想要的假设 - 是因为它不存在。 在硬件中执行TCP / IP堆栈需要大量资源,这意味着需要非常昂贵的FPGA,并且当你可以购买一个围绕理论硬件实现运行环的5美元微控制器时,绝对没有理由这样做。 。 很明显,有些人有兴趣让tcp / ip工作,有人应该发布设计文件,这样有人可以即插即用,但你的集体自豪感让你无法做到这一点。 我不尊重这个决定,但我无能为力。 想象一下,我想出了一个非常聪明的界面设计,取代了三个有点贵的外部芯片。 想象一下,我是在公司时间开发的,用于我们销售的产品。 即使我想把这个核心拿走,我也不能,因为我的雇主拥有它。 当然,如果它给我们带来竞争优势,那么我自然不想让其他人使用它。 这不是“集体的骄傲”。 这是关于试图在竞争中领先一步,因此我们可以保持业务和所有这一切。 如果开放硬件的人想要放弃他们的工作,这很好,我没有问题。 但如果你通过提出解决问题的聪明方法来谋生,那么放弃商店是合理的。 玩得开心。 感谢您作为硬件工程师洞察生活。 这是对作为硬件工程师的生活的另一种见解。 您已经对Xilinx工具的千兆字节补丁进行了抨击。 但请想一想:软件很容易修补,这些补丁很容易获得。 除了供应商端的服务器空间和两端的带宽之外,这些补丁不需要任何费用。 (好吧,也许软件供应商收取年度维护费,因此补丁不是免费的。) 如果搞砸PCB布局,成本就会立即开始增加。 如果你在PCB工厂之前发现错误,没有任何伤害没有犯规。 如果你在你的第一篇文章没有启动或正常工作时遇到错误,那么你已经浪费了制作裸板的数量(也许一些死角可以使它们变得有用),以及填充在它们上的组件( 从填充板上回收大部分零件是不值得的,加上实际填充板的成本。 原型数量的原始多层板每个可能花费数百美元。 (我是认真的。) 现在假设设计已通过原型测试并获准生产。 数以百计的电路板被制造和填充。 当然,单件成本下降,但它仍然是一大块变化。 董事会从组装回来,测试运行,出了点问题。 可能是任何东西:填充指南中的错误意味着偏振帽向后安装。 如果你很幸运,那些错误可以被追踪和修复,但需要付出一些代价。 现在进一步假设产品通过内部测试,数百个单元出货给热切的客户。 但隐藏的东西潜伏着。 也许是一些漏洞的帽子。 也许特定部分的散热不充分,因此它失败了。 很多事情都可能出错。 但是现在产品掌握在客户手中,你的手上有保修维修问题,这意味着RMA,新板作为替代品,客户不好,各种各样的东西不能简单 通过下载更新版本的软件来修复。 所以原谅那些在产品出门之前必须把事情做好的可怜的硬件人员。 并且可怜那些必须满足纯软件产品根本不存在的成本目标的可怜的硬件人员。 并且jeebus帮助那些有巨大资金需求的穷人将产品投入生产并提供给客户。 是的,与硬件开发人员相比,软件开发人员的生活在公园里度过了美好的一天。 祝你好运。 ----------------------------是的,我这样做是为了谋生。 以上来自于谷歌翻译 以下为原文 xilinx_temp_9099 wrote:To me, TCP/IP, a 30-year-old technology, is a commodity, and I'm still dumbfounded as to why there's not a working example that I can slap onto my board.See, you've fallen into the trap. The reason that there's no "working example of TCP/IP" -- in hardware, which is my assumption about what you want -- is because it doesn't exist. To do a TCP/IP stack in hardware would require a significant amount of resources, which means a very costly FPGA, and there is absolutely no reason to do it when you can buy a five dollar microcontroller that will run rings around a theoretical hardware implementation. Imagine that I came up with a pretty clever interface design that replaces three external chips that are somewhat expensive. Imagine further that I developed it on company time, for a product that we sell. Even if I wanted to give this core away, I can't, as my employer owns it. Of course, if it gives us a competitive advantage, then naturally I would not want to let others use it. This is not "collective pride." This is about trying to keep one step ahead of competition, so we can stay in business and all of that. If the open-hardware guys want to give away their work, that's great and I have no problem with it. But if you make a living by coming up with clever solutions to problems, then it's reasonable not to give away the store.
Here's another insight into life as a hardware engineer. You've already railed on the gigabytes of patches to the Xilinx tools. But think about this: software is easily patched, and these patches are easily obtained. These patches don't cost anyone anything, except maybe for server space on the vendor end and bandwidth at both ends. (OK, so maybe a software vendor charges a yearly maintenance fee, so the patches aren't free.) If you screw up a PCB layout, the costs start to add up right away. If you catch the mistake before PCB fab, no harm no foul. If you catch the mistake when your first-article boards don't start up or work right, then you've wasted the number of bare boards that were fabbed (perhaps some deadbugging can make them useful), plus the components stuffed on them (it's not worth it to reclaim most parts from a stuffed board), plus the cost incurred in actually having the boards stuffed. Raw multilayer boards in prototype quantities can cost hundred of dollars each. (I am not kidding.) Now assume that the design has passed prototype tests and is approved for production. Hundreds of boards are built and stuffed. Sure, per-piece costs go down but it's still a very large chunk of change to lay out. Boards come back from assembly, tests are run, something is wrong. Could be anything: an error in a stuffing guide meant that polarized caps are installed backwards. If you're lucky, those mistakes can be tracked down and fixed, at some cost. Now further assume that the products pass inhouse testing and hundreds of units ship out to eager customers. But something insidious was lurking. Maybe some leaky caps. Maybe the heatsinking on a particular part wasn't adequate and as a result it's failing. Lots of things can go wrong. But now that the product is in the hands of the customer, you've got a warranty repair issue on your hands, meaning RMAs, new boards go out as replacements, bad will with the customer, all sorts of stuff that can't simply be fixed by downloading a newer version of the software. So forgive the poor hardware guys who have to get things right before the product goes out the door to the customer. And pity the poor hardware guys who have to meet cost targets that simply don't exist with pure software products. And jeebus help the poor hardware guys who have significant capital needs to get the product into production and out to customers. Yeah, the life of the software developer is a nice day in the park compared to that of a hardware guy. Good luck. ----------------------------Yes, I do this for a living. |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
2379 浏览 7 评论
2794 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2261 浏览 9 评论
3335 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2427 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
755浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
543浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
364浏览 1评论
1960浏览 0评论
681浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 06:51 , Processed in 1.899142 second(s), Total 116, Slave 99 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号