<html><head></head><body><div class="yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div dir="ltr" data-setdir="false">Hi TriEmbed,</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Good to see everyone.  That was my first post Covid meeting.  :-)<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">FPGA is my favorite four letter word.  :-)</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Who is the audience?  What is the budget?<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">I would suggest a quick survey of existing FPGA development boards.  No reason to re-invent the wheel.  There are advantages to having a board on the desk, but simulators are very good.  You can (should) design and test the FPGA before HW is available provided you have identified needed functionality.  There are significant delays buying some components these days, but there are still avenues to get handfuls of components.  No reason the FPGA design should wait for hardware.  FPGA's are a digital Swiss army knife.  You have everything from the 3 blade classic to the 31 blade all in one.  One of the biggest challenges will be answering the "What should it do" question.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><div dir="ltr" data-setdir="false">digikey.com</div><div dir="ltr" data-setdir="false">avnet.com</div><div dir="ltr" data-setdir="false">arrow.com<br></div><div dir="ltr" data-setdir="false">newark.com</div><div dir="ltr" data-setdir="false">sparkfun.com</div><div dir="ltr" data-setdir="false">digilent.com</div><div dir="ltr" data-setdir="false">kickstarter.com</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">The FPGA suppliers with recent changes:<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><div dir="ltr" data-setdir="false">Tier 1 - Altera (purchased by Intel), Xilinx (purchased by AMD)</div><div dir="ltr" data-setdir="false">Tier 2 - Microchip (Actel --> Microsemi --> Microchip)<br></div><div dir="ltr" data-setdir="false">Tier 3 - Lattice</div></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">The "Tiers" are listed in order of decreasing performance and cost.  You basically pay for number of things (LUT's, FF's, clock modules, etc.) and how fast these "Things" go.  I tend to write off Altera because their absorption by Intel seems pretty absolute.  Xilinx still stands more as a separate company, but their top end products are off the table, very expensive and hard to get.  They still manufacture older series, Spartan 7 and Artix 7 which are players.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Microchip has some interesting products in their PolarFire Line.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Lattice is the budget play.<br></div><br><div dir="ltr" data-setdir="false">I mention vendor early because FPGA tools historically are vendor specific.  Simple designs can move from one vendor to another fairly easily.  As performance increases, you become more intimate with a particular vendor.  Open source alternatives may be starting to crack this dependence.  I haven't really followed them.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Initial thoughts...</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">I would suggest a board that plugs in to a larger Host via USB at a minimum for power, programming and communication.  From there you can add Ethernet, PCIE, etc.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- Suggested Early Task:  GUI on the Host which would run under Linux, Winblows (I am not biased), or Mac.  This is my biggest weakness as a HW guy.  :-)<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">You may want external RAM (DDR, LPDDR, etc.) for computation.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Most FPGA designs use custom logic in the fabric plus a microcontroller either inside the FPGA (soft core) or external ASIC.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- Suggested Early Task:  Investigate System V an open source ISA out of Berkeley.  You can implant "n" cores in the FPGA starting with a basic System V configuration then add custom instructions.  No license fees.  No purchase delays.  The only limit on the quantity of installed nodes is the available plumbing in the FPGA.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- ADC's are very interesting.  You can add a very fast external ADC for communication or an oversampled ADC inside the FPGA for audio or instrumentation.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- Any of a number of computational tasks in the arenas of DSP, video, communication, etc.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- We need to be patient on delivery times in the current Covid supply paradigm.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- We can always add premium features in the board layout then enable subsets based on board population options.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-- Traditionally there are three pieces to this effort that are dependent:  FPGA design, Board design, and SW design (embedded micro and Host).  I live in the first two...<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">See you guys on 11/22.<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">Sincerely,</div><div dir="ltr" data-setdir="false">Kevin Schilf<br></div><div dir="ltr" data-setdir="false"><br></div></div><div><br></div></div></body></html>