clarifyg
[crowdsupply.git] / updates / 023_2020mar26_decoder_emulator_started.mdwn
index b836e2ad7c5dae935d56eca9d71a2908214f0135..7dc701bb08e68eab235d7ba71736928c6ad8a6ab 100644 (file)
@@ -25,7 +25,7 @@ Here's the summary (if it can be called a summary):
   for verification.
 * Jacob's simple-soft-float library growing
   [Power FP compatibility](http://bugs.libre-riscv.org/show_bug.cgi?id=258)
-  and python bindings. 
+  and python bindings.
 * A Conference call with OpenPOWER Foundation Director, Hugh, and Timothy
   Pearson from RaptorCS has been established every two weeks.
 * The OpenPOWER Foundation is also running some open
@@ -87,7 +87,84 @@ More on that when it happens.
 
 # Coriolis2 experimentation started
 
-TODO by Jock http://bugs.libre-riscv.org/show_bug.cgi?id=217#c44
+Jock, a really enthusiastic and clearly skilled and experienced python
+developer, has this to say about coriolis2:
+
+    As a humble Python developer, I understand the unique status and
+    significance of the Coriolis project, nevertheless I cannot help
+    but notice that it has a huge room for improvement. I genuinely hope
+    that my participation in libre-riscv will also help improve Coriolis.
+
+This was the short version, with a much more
+[detailed insight](http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2020-March/005478.html)
+listed here which would do well as a bugreport.  However the time it would
+take is quite significant.  We do have funding available from NLNet,
+so if there is anyone that would like to take this on, under the supervision
+of Jean-Paul at LIP6.fr, we can look at facilitating that.
+
+One of the key insights that Jock came up with was that the coding style,
+whilst consistent, is something that specifically has to be learned, and,
+as such, being contrary to PEP8 in so many ways, creates an artificially
+high barrier and learning curve.
+
+Even particularly experienced cross-language developers such as
+myself tend to be able to *read* such code, but editing it, when
+commas separating list items are on the beginning of lines, results in
+syntax errors automatically introduced *without thinking* because we
+automatically add them *at the end* because it looks like one is missing.
+
+This is why we insisted on PEP8 in the
+[HDL workflow](http://libre-riscv.org/HDL_workflow) document.
+
+Other than that: coriolis2 is actually extremely exciting to work with.
+Anyone who has done manual PCB layout will know quite how much of a relief
+it is to have auto-routing: this is what coriolis2 has by the bucket-load,
+*as well* as auto-placement.  We are looking at half a *million* objects
+(Cells) to place.  Without an auto-router / auto-placer this is just a
+flat-out impossible task.
+
+The first step was to
+[learn and adapt coriolis2](http://bugs.libre-riscv.org/show_bug.cgi?id=178)
+which was needed to find out how much work would be involved, as much as
+anything else, in order to be able to accurately assign the fixed budgets
+to the NLNet milestones.  Following on from that, when Jock joined,
+we needed to work out a compact way to express the
+[layout of blocks](http://bugs.libre-riscv.org/show_bug.cgi?id=217#c44)
+and he's well on the way to achieving that.
+
+Some of the pictures from coriolis2 are
+[stunning](bugs.libre-riscv.org/attachment.cgi?id=29).  This was an
+experimental routing of the IEEE754 FP 64-bit multiplier.  It took
+5 minutes to run, and is around 50,000 gates: as big as most silicon
+ASICs that have formerly been done with Coriolis2, and 50% of the
+practical size that can be handed in one go to the auto-place/auto-router.
+
+Other designs using coriolis2 have been of the form where the major "blocks"
+(such as FPMUL, or Register File) are laid-out automatically in a single-level
+hierarchy, followed by full and total manual layout from that point onwawrds,
+in what is termed in the industry as a "Floorplan".
+With around 500,000 gates to do and many blocks being repeated, this approach
+is not viable for us.  We therefore need a *two* level or potentially three
+level hierarchy.
+
+[Explaining this](http://bugs.libre-riscv.org/show_bug.cgi?id=178#c146)
+to Jean-Paul was amusing and challenging.  Much bashing of heads against
+walls and keyboards was involved.  The basic plan: rather than have
+coriolis2 perform an *entire* layout, in a flat and all-or-nothing fashion,
+we need a much more subtle fine-grained approach, where *sub-blocks* are
+laid-out, then *included* at a given level of hierarchy as "pre-done blocks".
+
+Save and repeat.
+
+This apparently had never been done before, and explaining it in words was
+extremely challenging.  Through a massive hack (actively editing the underlying
+HDL files temporarily in between tasks) was the only way to illustrate it.
+However once the lightbulb went on, Jean-Paul was able to get coriolis2's
+c++ code into shape extremely rapidly, and this alone has opened up an
+*entire new avenue* of potential for coriolis2 to be used in industry
+for doing much larger ASICs.  Which is precisely the kind of thing that
+our NLNet sponsors (and the EU, from the Horizon 2020 Grant) love.  hooray.
+Now if only we could actually go to a conference and talk about it.
 
 # POWER ISA decoder and Simulator
 
@@ -187,7 +264,63 @@ TODO http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2020-March/005291.ht
 
 # Epic Megagrants
 
-TODO
+Several months back I got word of the existence of Epic Games' "Megagrants".
+In December 2019 they announced that so far they've given
+[USD $13 million](https://www.unrealengine.com/en-US/blog/epic-megagrants-reaches-13-million-milestone-in-2019)
+to 200 recipients, so far: one of them, the Blender Foundation, was
+[USD $1.2 million](https://www.blender.org/press/epic-games-supports-blender-foundation-with-1-2-million-epic-megagrant/)!
+This is an amazing and humbling show of support for the 3D Community,
+world-wide.
+
+It's not just "games", or products specifically using the Unreal Engine:
+they're happy to look at anything that "enhances Libre / Open source"
+capabilities for the 3D Graphics Community.
+
+A full hybrid 3D-capable CPU-GPU-VPU which is fully-documented not just in
+its capabilities, that [documentation](http://libre-riscv.org) and
+[full source code](http://git.libre-riscv.org) kinda extends
+right the way through the *entire development process* down to the bedrock
+of the actual silicon - not just the firmware, bootloader and BIOS,
+*everything* - in my mind it kinda qualifies in way that can, in some
+delightful way, be characterised delicately as "complete overkill".
+
+Interestingly, guys, if you're reading this: Tim, the CEO of RaptorCS
+informs us that you're working closely with his team to get the Unreal
+Engine up and running on the POWER architecture?  Wouldn't that be highly
+amusing, for us to be able to run the Unreal Engine on the Libre-SOC,
+given that it's going to be POWER compatible hardware, as a test,
+first initially in FPGA and then in 18-24 months, on actual silicon, eh?
+
+So, as I mentioned
+[on the list](http://lists.libre-riscv.org/pipermail/libre-riscv-dev/2020-March/005262.html)
+(reiterating what I put in the original application), we're happy with
+USD $25,000, we're happy with USD $10 million.  It's really up to you guys,
+at Epic Games, as to what level you'd like to see us get to, and how fast.
+
+USD $600,000 for example we can instead of paying USD $1million to a proprietary
+company to license a DDR3 PHY for a limited one-time use and only a 32-bit
+wide interface, we can contract SymbioticEDA to *design* a DDR3 PHY for us,
+which both we *and the rest of the worldwide Silicon Community can use
+without limitation* because we will ask SymbioticEDA to make the design
+(and layout) libre-licensed, for anyone to use.
+
+USD 250,000 pays for the mask charges that will allow us to do the 40nm
+quad-core ASIC that we have on the roadmap for the second chip. USD
+$1m pays for 28nm masks (and so on, in an exponential ramp-up).  No, we
+don't want to do that straight away: yes we do want to go through a first
+proving test ASIC in 180nm, which, thanks to NLNet, is already funded.
+This is just good sane sensible use of funds.
+
+Even USD $25,000 helps us to cover things such as administration of the
+website (which is taking up a *lot* of time) and little things that we
+didn't quite foresee when putting in the NLNet Grant Applications.
+
+Lastly, one of the conditions as I understood it from the Megagrants
+process is that the funds are paid in "stages".  This is exactly
+what NLNet does for (and with) us, right now.  If you wanted to save
+administrative costs, there may be some benefit to having a conversation
+with the [30-year-old](https://nlnet.nl/foundation/history/)
+NLNet Charitable Foundation.  Something to think about?
 
 # NLNet Milestone tasks
 
@@ -219,8 +352,10 @@ as well as the key differences is particularly important.  At the very least,
 the extremely simple and highly effective hardware but timing-critical
 design aspects of the circular loops in the 6600 were recognised by James
 Thornton (the co-designer of the 6600) as being paradoxically challenging
-to understand why so few gates could be so effective.  Consequently,
-documenting it just to be able to *develop* it is extremely important.
+to understand why so few gates could be so effective (being as they were,
+literally the world's first ever out-of-order superscalar architecture).
+Consequently, documenting it just to be able to *develop* it is extremely
+important.
 
 We're getting to the point where we need to connect the LOAD/STORE Computation
 Units up to an actual memory architecture.  We've chosen
@@ -280,9 +415,10 @@ from both Mitch Alsup and Staf Verhaegen.
 
 (Staf is also [sponsored by NLNet](https://nlnet.nl/project/Chips4Makers/)
 to create Libre-licensed Cell Libraries, busting through one of the -
-many - layers of NDAs and reducing NREs for ASIC development: I helped him
-put in the submission, and he was really happy to do the Cell Libraries
-that we will be using for LibreSOC's 180nm test tape-out in October 2020.)
+many - layers of NDAs and reducing NREs and unnecessary and artificial
+barriers for ASIC development: I helped him put in the submission, and
+he was really happy to do the Cell Libraries that we will be using for
+LibreSOC's 180nm test tape-out in October 2020.)
 
 # Public-Inbox and Domain Migration
 
@@ -313,6 +449,11 @@ Fascinatingly, Linus Torvals is *specifically*
 [on record](https://www.linuxjournal.com/content/line-length-limits)
 about making sure that "Linux development does not favour wealthy people".
 
+We are also, as mentioned before, moving to a new domain name.  We'll take
+the opportunity to fix some of the issues with HTTPS (wrong certificate),
+and also do some
+[better mailing list names](http://bugs.libre-riscv.org/show_bug.cgi?id=184)
+at the same time.
 
 TODO (Veera?) bit about what was actually done, how it links into mailman2.
 
@@ -345,6 +486,40 @@ TODO
 
 # Conclusion
 
-TODO
-
+I'm not going to mention anything about the current world climate: you've
+seen enough news reports.  I will say (more about this through the
+[EOMA68](https://www.crowdsupply.com/eoma68/micro-desktop) updates) that
+I anticipated something like what is happening right now, over ten years
+ago.  I wasn't precisely expecting what *has* happened, just the consequences:
+world-wide travel shut-down, and for people - the world over - to return to
+local community roots.
+
+However what I definitely wasn't expecting was a United States President
+to be voted in who was eager and, frankly, stupid enough, to start *and
+escalate* a Trade war with China.  The impact on the U.S economy alone, and the
+reputation of the whole country, has been detrimental in the extreme.
+
+This combination leaves us - world-wide - with the strong possibility that
+seemed so "preposterous" that I could in no way discuss it widely, let alone
+mention it on something like a Crowdsupply update, that thanks to the
+business model on which their entire product lifecycle is predicated,
+in combination with the extremely high NREs and development costs for
+ASICs (custom silicon costs USD $100 million, these days), several
+large Corporations producing proprietary binary-only drivers for
+hardware on which we critically rely for our internet-connected way
+of life **may soon go out of business**.
+
+Right at a critical time where video conferencing is taking off massively,
+your proprietary hardware - your smartphone, your tablet, your laptop,
+everything you rely on for connectivity to the rest of the world, all of
+a sudden **you may not be able to get software updates** or, worse,
+your products could even be
+[remotely shut down](https://www.theguardian.com/technology/2016/apr/05/revolv-devices-bricked-google-nest-smart-home)
+**without warning**.
+
+I do not want to hammer the point home too strongly but you should be
+getting, in no uncertain terms, exactly how strategically critical, in
+the current world climate, this project just became.  We need to get it
+accelerated, completed, and into production, in an expedited and responsible
+fashion.