Advice for the Hardware Designer - Page 1
Forum section: electronics / beginners

author: zaka2506
author_rank: Newbie
timestamp: December 23, 2021, 08:28:28 pm
content: Hi, I am a hardware design engineer. I've watched Robert Feranec's tutorials and I'm watching two more courses at the same time. I want to specialize in high speed circuit design. There is a point where I am stuck. I've been watching and practicing the tutorials, but I have no idea how to proceed from now on. Should I study ready-made development boards and try to design the same ones? Or should I follow a path such as creating a preliminary design, creating a block diagram, making a schematic and pcb design, and then having the board produced, by determining the requirements as if they came from a customer?When I work at a workplace, I am given a list of requirements. Whether there are these communication protocols on the board, the power connections are like this, they should do this task, etc. Do you think I should determine these requirements and design circuits myself? Or are there sites or books that will guide me and create projects in this way? Waiting for your recommendations.

author: wa2pux
author_rank: Contributor
timestamp: December 23, 2021, 08:44:09 pm
content: I am a recently retired Electronics Engineer specializing in Product development.Specifications/requirements ... in my experience, never actually complete and VERY often expanded on as the project progresses (i.e. "scope creep").I ended up having to be the driving force behind getting a fully defined set of specifications (that I could actually design to) and get them signed off by those who were calling the shots on what the product should be.Then I extrapolated on what it *could* be because I knew that folks will eventually discover this and ask for it to become this.My design, then, would realize the signed off requirements with the added "hooks in place" so that it was easily expandable to what it could be **when** they added this as a requirement. This saved me a LOT of redesign time and made me "agile" when scope creep hit.Regarding how to go about design ... no sense in reinventing the wheel, so to speak. There is benefit to using what has already been developed, cook-booking it, so to speak. There is, however, the danger of boxing yourself into the corner as those development/demonstration boards were not necessarily intended as the end all for your specific application. So, they make a great starting place, but do not be afraid to step out on your own and extrapolate past them to something better.One of my ploys has been to bring as many things to the microcontroller or programmable logic device as possible so that functionality lay in programming, not hardwired logic. They want something different? Write or modify a bit code and, presto-changeo, it is that.Hope this helps!

author: jonpaul
author_rank: Super Contributor
timestamp: December 24, 2021, 10:24:59 am
content: Bonjour a tousBravo for the efforts! I am unaware of Robert Feranec.The very best high speed hardware reference is the website and books of Dr Howard JOHNSON especially his booksHigh-Speed Digital DesignHigh-Speed Signal Propagationhttp://www.sigcon.com/I know some gigahertz layout experts that designed MoBos and RF products that used his techniques.For specs and mission creep, when we consulted decades ago, our agreements had language that locked the quote and contract to the original sec and that any changes to spec or additions will result in additional time and cost.Many times that consulting agreement saved the day!Just my experience,Bon Chance,Jon

author: GerryR
author_rank: Frequent Contributor
timestamp: December 24, 2021, 12:36:36 pm
content: Mostly retired automation equipment and control system designer. All I can say is "specs, specs, specs." You need to know where you are headed before you can chart the course. Nothing wrong with using pre-established circuits / systems, but I have yet to get into a project where something unique to the project didn't need to be designed. That's the fun of it!!

author: rpiloverbd
author_rank: Regular Contributor
timestamp: December 24, 2021, 02:32:56 pm
content: I think a professional long course on ARM Microcontroller with certification will help you further. Nowadays, with strong determination, anyone can learn anything from the internet. But when you are under the guidance of a professional, learning becomes more systematic and easier.

author: Bud
author_rank: Super Contributor
timestamp: December 24, 2021, 02:48:49 pm
content: Quote from: zaka2506 on December 23, 2021, 08:28:28 pmSo are you given the requirements or you have to develop them? You are saying opposite things. This is confusing.

author: zaka2506
author_rank: Newbie
timestamp: December 24, 2021, 02:56:13 pm
content: I know about Dr Howard Johnson's books but didn't know he had videos, that was really good. Thank you so much.

author: zaka2506
author_rank: Newbie
timestamp: December 24, 2021, 03:00:27 pm
content: You're right, I wrote a bit of a mess. I am not currently working in a company and I want to improve myself in hardware Design field. What I really want to learn is what path should I follow while developing myself? I follow the trainings, but I want to do projects as if I was working in a company, but I am inexperienced. At this point I don't know how to proceed to the next step.

author: RoGeorge
author_rank: Super Contributor
timestamp: December 24, 2021, 03:00:34 pm
content: Quote from: zaka2506 on December 23, 2021, 08:28:28 pm"Necessity is the best engineer", and these are not just catchy words/quotes.Nothing else, and no amount of preparation can beat that statement, and each time the story happens, it is different, but always the same.Once you parsed the learning steps and got familiar with "whatever", start solving a real world problem. Nothing can beat reality.Later edit:Also, as a side note, it is rather unusual for this forum to post many replies in a row, like it will be a chat room. We try to keep each reply as full with content as possible, and stay away from casual "polite only" replies.But don't get me wrong, you are certainly welcomed and all replies here are valued.

author: Jester
author_rank: Frequent Contributor
timestamp: December 24, 2021, 03:03:11 pm
content: 1) agree 100% with the others regarding a signed off specification.2) sometimes you can leverage and existing design to save a fair bit of effort and time. For example I recently did a custom uC board that had an available development board with that uC, DDR, GHz Ethernet etc etc. the client wanted most of what was on the development board some extras in a form factor that was a bit larger than the original board. I was able to get the original CAD files for the development board and use a good portion of it as the basis for the custom design. This was a fairly complex 8 layer board, so it saved significant time, worked 100% on rev 0 and passed all EMC. So leverage when you can, it also gives you an opportunity to see what they did and perhaps why they did it that way. That being said some of these development boards are not the greatest designs, so you might need to rework the not great portions.

author: fourfathom
author_rank: Super Contributor
timestamp: December 24, 2021, 03:33:44 pm
content: I suggest that you back up a step. Find or create a problem and figure out how to solve it. Specs don't exist in a vacuum, they are developed to meet a need. Come up with something you want to do, some function you want a design to perform. Only then write the specs. Then figure out how to solve the problem. You will find that some aspects are easy, some hard, some better-solved with a different technique and perhaps different specs. Don't get bogged down in the formalities, you are your own customer. The goal is to learn, and sometimes following a diversion is the best way to learn something new.

author: tggzzz
author_rank: Super Contributor
timestamp: December 24, 2021, 11:03:13 pm
content: Quote from: fourfathom on December 24, 2021, 03:33:44 pmYes, just so.Do that for something outside your curriculum. Make mistakes. Learn. Decide what you would do better next time.Repeat.All that will impress an interviewer, in several ways.

author: wizard69
author_rank: Super Contributor
timestamp: December 25, 2021, 12:04:34 am
content: Quote from: zaka2506 on December 24, 2021, 03:00:27 pmWell doing a whole board as a DIY project is very time consuming. The big problem with starting out like this is that you do not benefit from working with seasoned engineers. However the internet does make up for that in part. You can get serious help though you will need to keep the scope of the project under control, to that end I'd suggest a small single board controller with the board no bigger than Arduino or maybe Raspberry PI. Put some high speed ports on it and maybe even some ram, I'm thinking SoC so that the ports would be available in the first place. The proceed to get everything working. By the way there is a huge cost in software here, almost every high speed port these days requires serious software support thus you seldom see one man success stories. If there are success stories it is usually because they purposefully narrow scope. You may need drivers or whole operating systems ported just to get hardware to work.I'm always scratching my head when it comes to many of these single board controllers as I'm always asking why didn't they do "this". Cost is often sited which may be true but a DIY project will not suffer from this. So why not consider such a board with a really fast interface to an SSD of some sort. That all by itself should offer some high speed challenges. Plus Linux would really benefit on such boards. If you go with a SoC, with built in RAM, this should easily fit on a small board.By the way yes I know those SoC are expensive but they also come with the high speed ports that need to be proper;y routed to port connectors. Documentation may be hard to come by too. However what yo will end up with is a variety of high speed ports from USB to video to whatever. Since this seems to be what your are interested in an SoC that supports many of these sorts of ports seems to be the right avenue. Plus if you want to have something that shows off skills well modern hardware is the place to do it.As for how do you spec something like this, build it so that it has what you want in small single board computer. If you want two USB ports and a modern video port than design them in. If you need a dog slow serial port design them in. If you want a fast SSD then design it in. The trick is to come up with the specs before hand and then try to pack everything in. I'm thinking a board here capable of running Linux and that simply because there is an "easy" path to hardware support to actually get the board running.On the flip side there are lesser micro controllers that may have enough software support from the manufactures to allow you to do a simpler board. The idea here is that they would have software to support high speed USB and maybe a port to an SD card. Again the goal is to minimize the need to write a lot of low level code to get your high speed ports to work correctly. The problem here is that there might not be much in the way of high speed electronics to support / design for. Just avoid another Arduino compatible board, too many of them exist. From the design standpoint though the effort is the same, you need to define what you want on the board and go about supporting that functionality. Every bodies needs are different, I might say I want two old fashion RS232 ports and the next guy would laugh at that and say he wants CAN bus support, and the guy next to him would want 4 USB ports. In the end the Microcontroller might define what goes on the board. Sometimes the specification is the hard part.In a nut shell we can't tell you what to design. High speed can mean different things to different people, you could have ideas far beyond what I expressed here. In any event I'd love to see you bring a nicely designed ARM board to market. Why go work for somebody else?

author: zaka2506
author_rank: Newbie
timestamp: January 10, 2022, 07:30:46 pm
content: What kind of ARM board would you like to see? Can you expand on its features a little more?