[Music]
[Applause]
[Music]
and to be the hardware than it is to
change the heart change the software
that was running on that old hardware so
agreeing on the is a gets you lots of
great software so you get tools that
know how to speak this language so you
get compilers assemblers you get tools
that let you debug programs that are
running on that kind of hardware you can
get visualizers that you know show you
how the code is executing through a
machine speaking that language you get
emulators of things that can pretend to
be that hardware and simulators that can
simulate that hardware and then you get
all this great stuff like documentation
and programmers guides application notes
and like things that you can find when
you search on the internet and go to
stack overflow like there's actually
answers there because people are you
know using this is a so it's really
important to understand that IFA is just
the standard it's just what we agree on
it's not any sort of implementation it's
just the rules so but standards are
really important they make a huge
difference in the hardware world so for
example in networking Ethernet tcp/ip is
an open standard it's like you know you
just go online and you can see it and
you can implement your own version of it
and I had to do this in one of my uh
grad school classes I didn't do that
great but you know students learn how to
do networking this way and there's lots
of proprietary implementations as well
similarly for OS there as a standard for
how to do multi-threaded things so you
don't have to kind of understand what
hardware you're writing on when you're
trying to what kind of hardware you'll
be running on when you're writing your
user level application and so the
operating system kind of provides that
abstraction so Linux and FreeBSD are
open implementations of this but you
know Microsoft Windows does the exact
same thing or uses the same standard so
you can write apps that are kind of
portable as possible.the to and like we
said the C high-level language is also a
standard I think you were head would
kind of explode if somebody told you oh
you don't you can't write a C program
that you don't have a license for C it's
an open standard anybody can use it and
therefore there are free and open
compilers
GCC in LLVM and but there's also
proprietary implementations of those
compilers so for example intel has a
compiler that will make sure that c code
compiles really well to run on an x86
processor and arm does the same thing to
make sure that their stuff runs really
well on ARM processors and they don't
really want like the other side to see
the cool tricks that they're doing so
those are proprietary implementations
similar with databases and graphics but
before you know wrist 5 has been around
a little while but before verse 5 there
really wasn't an open standard there's
just the standard just the rules that
we're gonna follow and therefore there
weren't really any free and open
implementations of it's not existent
standard but there were lots of
proprietary standards like x86 and arm
and so there are lots of proprietary
implementations the problem with the
proprietary ISAs is that they come and
go they're kind of subject to the
win-wins of companies and their
successes and failures and business
decisions and stockholder pressures and
things like that so I mean some of these
things I mean are before my time and
Intel is now kind of x86 shop before
that they had different processors
different ISAs those are all kind of
gone and retired if you had a program
that worked on those you can't run
anymore or you have to have an emulator
another great example is MIT's so they
have is a that the company built
processors that use that I say it was
proprietary the company got sold to
imagination then they got by wave and
anti startup then they open sourced
their thing a year ago and it's like
really exciting I just learned like
yesterday that that's not even open
source anymore they just like killed it
so you're completely at the whims of
companies and similar story with spark I
mean they open source they're open they
made their open open spark processor
then the company got acquired by Oracle
they got shut down there's still people
making the processors but it just kind
of comes and goes and even arm is like
an incredibly popular right now but the
company itself was sold to Softbank and
now it's being sold off dog with Dobby
and that's been fun it's just like never
quite and sure what might happen
but the these different kind of
investors might decide to do with is a
so one other thing about why risk five
why is this five coming so if you look
at a modern ship which you might call an
SOC or system-on-a-chip
the question is how many ISAs does it
actually speak I mean this is a chip
that comes from Nvidia so if you've been
listen to my talk you might think it
speaks the nvidia is a but that would be
a wrong assumption and modern SRC is
made up with lots of different
processors actually there will be an
applications processor often arm which
is kind of the workhorse just kind of
managing everybody else's tasks doing
all the general-purpose stuff that's
hard to generalize but then there's
graphics processors that are doing lots
of like matrix application operations
and convolutions and stuff like that
similar with image processors then
they'll be like radio DSP that need to
do Fourier transforms and like just
process a lot of data and they don't
need to do things like you know just
random memory accesses and stuff like
that
similar with audio then they'll be
security processors that are optimized
for doing like AES operations or like
block encrypt operations and they might
be kind of hardened to make sure that
they are resistant to attacks which I
think that's how after this one and then
they'll be like a power management
processor that's super simple super
boring you just want it to be small and
work and not take up a lot of space and
each of these have their own I say
because they're all proprietary or why
it why do they why is it like that so
first of all the ISAs don't work very
well to each other so the apps processor
is a kind of have to deal with
everything kind of well so it's big and
inflexible and the accelerators like I
don't I don't want to do all that stuff
I just want to like you know do my
Fourier transforms really well and so
the accelerators have to come up with
their own language and then secondly you
know all of these IPS are actually
coming from different companies I mean
NVIDIA is not an expert in making all of
these things
sorry I've got my timer going so in
video is not an X ok Nvidia is not an
expert in making all of these things so
they have to you know buy these things
from
different providers and the different
providers you know don't have rights to
each other's eyes essays so they'll have
to come up with their own languages and
then finally there's some things that
are like so simple you might task
someone on your in your own engineering
staff to you know build the process for
this thing and you know I'm a hardware
designer someone comes to me and says
hey I need you to build a processor for
our chip you know I'm not gonna go buy
someone else's because that's my job so
I got to come up with and design
something and so I have to make
something up and then you know I have to
make up my own tool chain and everything
else so that's how we sort of end up in
this mess of all these different
languages being spoken on a chip so the
question is really do we actually need
all these different ices do they really
have to be for priority and they have to
keep vanishing so what if there was one
stable free open I say that everybody
could use for everything and that's
really the idea of a high risk font so
in 2010 some Berkeley students grad
students Andrew Waterman and gets ugly
guys on the outside in this picture
we're working with their professor
Krishna asana vaq and Dave Patterson of
Hennessy and Patterson Fame if you ever
had to take a computer architecture
class so their group is a computer
architecture research group and they're
just trying to get their research done
they've got cool ideas they want to try
out and they need some computers I mean
a CPU to start with that they can modify
and do their cool research stuff but
choosing that starting CPU is getting
was was hard it was like getting the way
of their actual research so they had
some options they had the proprietary
option of arm or x86 but their licensing
issues they have to go to those vendors
and say hey can I you know have your
core and be able to modify your research
and like companies companies don't
generally allow that and for companies
that they do allow for like Apple you
know they just get paid like ridiculous
amounts of money and also even if they
were given permission it's a very
complex language these things are kind
of built up over time they've got all
kinds of stuff in there and like it's
not just add and subtract there's all
kinds of crazy stuff and it's too
complex as a starting point if you want
to kind of add on to it so they looked
also at open source options but at the
time there weren't very many and
kind of making a lot of assumptions
about the implementation that they were
going to use so like there might be an
ISA that's very tightly coupled to the
CPU that implements it which is not
exactly what you want if all you wanted
to find is a standard that anybody can
implement so they were like all right
well it's summer we don't anything else
to do let's do this three-month project
over the summer to just start from
scratch with a clean slate I say and
they called it risk five with the V
because it represented the fist fifth
major is a coming out of Berkeley so
they've been kind of doing this stuff
for years and you know students would
come and go but risk five was going to
kind of take everything that they've
learned and start from scratch
so risk five as an I say is super boring
it goes back to basics the intention was
for it to be simple to learn and
implement so they want it to be a
learning tool and an easy to implement
so you can get on to your cool stuff
that you actually wanna do but at its
heart it also makes it easy to add bells
and whistles so it's designed to be
extensible it's designed to be modular
so certain parts of it are defined but
like you can add and remove them as you
see fit and you can add your own custom
stuff that you think of and actually
it's so simple that if you go to the
risk five website for every instruction
in the ISA they actually trace the
genealogy of the instructions back to
like you know the first computers or
whatever they implemented it and show
that this is like there's no new ideas
here it's just we just picked all the
stuff that we showed over years actually
worked but boring doesn't mean like slow
or bad it just means it's really easy to
implement which means you can like get
on to the cool stuff and make it fast or
add your custom stuff so you know they
did this just for their own uses over
the summer so they were kind of doing it
and they were they had you know their
like internal website or whatever and
some papers that were being published
and as they were doing it they're making
changes and the people outside of
Berkeley started complaining which is
kind of weird because this is just
mostly for them sounds like so it turned
out that other people we're finding it
really useful to have this simple boring
easily extensible is a published
as the Brickley people were doing work
and like working on the tool chains and
everything other people could use it but
then they start you know if you change
something then that you're like wait a
minute like my computer doesn't
understand your code anymore what
happened oh you guys change the I say
this this is getting annoying so they
decided in May 2014 to actually freeze
the user spec so they have started you
know four years later after the three
months summer project started they kind
of had made enough learnings from all
these tape outs and publications that
they'd done a long way they did a like a
ton of like you know cristes like super
obsessed with how do the bits actually
get lined up in the instruction to make
sure they'll be really easy to code and
so in May 2014 they actually said this
is frozen we're not gonna change anymore
cuz people care and then they decided to
do something additional which is to
create a separate foundation called the
risk 5 foundation to maintain the
standard because you know if it's at
Berkeley there's like grad students they
come and go and people's you know
projects languish but the foundation was
created to kind of keep this living in
perpetuity so risk 5 is the open source
hardware instruction set and it's free
and open to use and the spec is was
ratified in 2014 an additional specs
have been ratified since then by the
foundation so the foundation is a
membership organization companies or
individuals or other groups can join so
there are 13 University members there
are 29 research and consulting type
organizations there are organizations
who joined who do software and tools
development who want to run stuff on
risk 5
there are people who do like machine
learning and they have like custom
hardware for that and so there are
companies that build design chips and
then there are companies that actually
build chips that like manufacturers
silicon wafer chips and things and then
there's also individual members so
anyone can join the foundation it's free
you just have to like check off a thing
that says you won't see each other and
build about it yeah and it's also a
worldwide movement so you know Intel is
an American company and arm is a British
company and other countries kind of like
yellow grumpy you and they have to just
use other people's technology so
countries like India the Indian
government actually declared risk 5 the
National is a of the country true and
the Chinese government is also like
heavily investing in companies who are
say that they're gonna do anything
response because I really want to like
get out of the yoke of this licensing
thing themselves for you know national
security reasons as well so there is
five ecosystem the foundation is really
you know just mandating the standard of
maintaining the standard so they have
the is a specification it's on their
website there's a repositories and
things where people on github you can
comment and file bugs and stuff like
that they also have a golden models
so things that actually you know show
you how the code is supposed to execute
so you can run a program through it and
be like ok it's mine doing the right
thing just based on this model and then
they also have compliance tests so if
you have something you say I think this
thing is risk 5 compliant I want the
risk 5 sticker on it they maintain the
like test suite to say ok yep it's
compliant you can set the risk 5 logo on
it but underneath that there's hardware
so there's open source hardware tons of
them tfor v32 is the one that you've got
to of on your badge
rocket is the one that I work with a lot
and but then there's also commercial
core providers so people who sell risk 5
cores
also some that's also something that I
do and then there's also companies that
develop cores in-house and they don't
really you know they're doing the for
their own purpose maybe for those power
management CPUs and stuff but we know
that they're on their chips and on top
of that there's the whole open-source
software ecosystem and the commercial
software ecosystem building up on top of
this specification alright so just so it
like remind it and really drill him the
point what is an is a it's just the
standard it's not the actual piece of
silicon that can execute code it's not
the chip it's not the tools and
compilers that you know you need to
generate the code that's going to run on
the chip
it's not aspect for anything else on the
chip this is also important to note like
if you have something you say it's is a
is a is risk five it doesn't say
anything about yeah but how do I
actually make the LEDs blink there's no
like blink LEDs instructions so there's
something about how do I map things to
pins and like memory map doors they're
special custom instructions or what and
it's not all the OS is and drivers and
software that are written to that
standard and just to finish up my
example of ISAs this is the ads section
of the risk five manual that's on
nervous five website and you can see
it's very compact it actually have like
a bunch of instructions including add in
this one little section so universe five
is really becoming the toy I say of
choice for education if you've ever
taken a computer architecture class you
might have used one of these two books
on the outside and those have both been
kind of switched over to teach verse
five and this is really cool because
students are learning verse five and
then they can come into industry and use
verse five so I know when I took
computer architecture I learned some
sort of fake MIPS thing maybe and then
when I came out and started you know
okay now I try to send the code that's
actually gonna work it was like x86 and
I was like I don't know this at all like
what is this and so it's really exciting
to have students coming and interviewing
for jobs that are like yeah I know verse
five I did was five and it's just like
it's just gonna make things so much more
efficient for everyone and in the middle
is the risk five reader which is a book
that was written by David Patterson and
Andrew Waterman which this is like a
really great reference it's a little bit
longer and more verbose than the actual
spec so risk I there's also becoming the
ISA of choice for researchers I made
this very scientific graph by going to
Google Scholar and googling risk five
over the years apparently used to be
able do this at the bots and they kind
of killed it so I did do it manually but
yeah I do remember the moment when I
first got an email that's like hey you
have a citation and I saw Everest five
in the title and I was like it's
happening so researchers are really
starting to leverage the intention of
RISC five to make theories get the
research done and so one example of
research I don't know I think this is
kind of a
Kersey so these team at MIT they built
an actual carbon nanotube
microprocessors the first time this has
been done in the past you know people
made a gate or like maybe a few little
gates together but they actually made a
working CPU and it's actually risk v
which is so cool it's like half verse
five because it's only 16 bits instead
of 32 bits but the point is that because
of us v we can really focus on the cool
part of your project you don't have to
sit around me like well if we're gonna
design a CPU like what should the add
instruction be it's like whatever just
go read the rest five manual and they
just you know make the carbon nanotubes
do their thing so I think this is like
the real power is five but it's not
about the I say it's like it's not a
problem anymore just do something else
take that and move on so you know where
I come into all this so I'm from
Stanford I'm not from Berkeley so I kind
of knew about this stuff in 2016 I was
working at a crypto hardware company
which was super cool but like super
secretive and like nothing was closed
open-source and I heard that there is
five inventors were starting a company
to actually build risk five silligan the
company is called fire five and I had
evaluated risk five for a project but at
the time we were calling is is cool
academic theme it's not really ready yet
so I was like cool I can go work and
help solve a problem that I'm facing an
industry this problem of picking what
processor to use and I can do it through
open source projects yes please money so
I joined sy5 and in that year so the
first year we made the first
commercially available risk five silicon
so people had taped out risk five chips
before I taped out a chip means you
actually like make a chip but no one was
selling them so we actually made a chip
that you could go and crowd supply and
buy the board and I think we're actually
selling them on digit key now the same
guys so that was in 2016 and then about
a year and a half later we did the first
Linux capable risk five multi-core chip
and so the question is these are running
risk five so are these open source chips
and answer is kinda so free and open is
a does not imply open source hardware
but it allows people to make open source
hardware implementation
or closed-source or a mixture so the
sci-fi chips are actually much of it as
open-source but there's things on the
chips that are proprietary IP and so
those parts aren't open sourced and is a
risk risk 5 is a says do whatever you
want to do it's fine just don't lie and
say it's verse 5 when it's not that's
the only thing that cannot after you for
but I think risk 5 does give you the
ability to build open source hardware
that's practical because so now people
can build open source cores and
platforms so again that badge fpga the
cords that's on here is open source and
it's one of many many risk 5 cores that
are open source that you can find
written lots of different languages and
then you can build a platform around
that but like how do i blink LEDs once I
have this risk 5 core and you can use
your open source compilers and you can
run open source OS is and you can run a
bunch of open source apps on top of
those devices so this is what project
that I did so are you can tell about my
shirt is glowing in this picture but so
basically this started with the 32-bit
embedded rocket rest live core which is
open source you can go see the stuff on
github and we taped out that silicon
that we talked about and we open sourced
as much of that as we could on this repo
and then we put that on the hi-5 one PCB
which is an Arduino form-factor board I
mean released all the schematics and
everything and then we ported Arduino
runtime thing and we call it Cinco and
we had that running on that board and
then I'm a big fan of the Adafruit stuff
because it always just works so I ported
the neopixel library for this little
matrix and got my thing to glow so that
I could go to maker faire and hold my
head up and so I think it's really cool
that I got to like touch all of this
stuff and we kind of moved things a
little bit farther down or up in my
picture from where we were before just
some other examples this is one from my
coworker he ported Zephyr OS to a
similar next revision of that board and
he has all the open source demo for this
the video doesn't really work in here
but
like it's a little pendulum demo but
really the point is he was able to pour
a zephyr OS and move that forward Chris
5 and Zephyr together and then a be open
is a you know a different company or
different organization that took that
Linux capable board as an example chip
and a Linux capable board and an open
FPGA image from micro semi and they put
it all together with this like really
well done Linux from Western Digital and
they put it in a box and they all you
have is five PC that actually you can
definitely run like real apps and things
so at pointa have mice
what a point I'm trying to make is just
because risks five doesn't require you
to be open source
it definitely enables you to do a lot of
open source stuff that you couldn't do
before
so we're do a few GA is come in I'm
guess we do charge so how we're def eg
is come in so like why do we care about
having an open source core chip I mean
the point is that you can look at it you
can read it you can understand it and
then you can change it or you can throw
it away but let's say you change the
code for a core and then you say cool I
changed it I went to your website and I
changed their code and I want a new chip
it's gonna take weeks or months to build
that chip just the process of like
slicing up silicon and like making
little waif masks to shine light on the
wafers and like chopping it up and
polishing it like these are all the
steps that go into actually building a
chip so that's gonna take a long time
and that's assuming you actually know
what you want to build if you want to
figure out what you're gonna want to
actually build it's gonna take months
two years on top of that so FPGA is
totally solve this problem so FPGA
stands for a field programmable gate
array and it's like this thing on your
chip the big guy and what it does is it
allows you to change the chips hardware
in a few minutes so when you're loading
programs onto this and I'm sure someone
will talk about this more in the
workshop so everything you can either
you know load code on to it it's like
the program you want it to run or you
can actually load a program of what is
this chip supposed to act like so right
now it's being it's told that you're
supposed to act like you know to risk
five cores and a bunch of other
awesome stuff but you could go in there
and you could change that and I think
those workshops about that yesterday and
today so here are five ways to modify a
risk five based design that are like
actually interesting now that you have
an FPGA because you don't have to sit
around waiting for a chip to come back
so you could tune the CPU that's on
there so that means you could take the
CPU you could change things like the
cache size how much memory does it have
how much branch prediction does it do
how deep is the pipeline so you're kind
of trading off frequency and area to try
to get something that works for your
application maybe you need something
that fits in this FPGA that's a tiny
FPGA all you needed to do is like
Lincoln led or you actually want to do
some crazy you know machine learning
acceleration thing and you need a lot
more resources and it fits on the FPGA
so you can change that stuff I would say
this is kind of basic computer
architecture stuff you don't really need
a special is a to do this like all most
is aids will let you tune these sorts of
things next thing you can do is tweak
the CPU so remember part of the glory of
being having open source design is that
you can actually look at it understand
it so I was having a conversation with
one of my mentors in grad school and he
mentioned like oh yeah I think there's a
patent on multiplication by zero like if
you multiply by zero you can just not do
it and then like saves you some power
you just know the answer zero so I was
like wondering do do people actually do
that like forget the patents just like
is that something computers actually do
so I googled in somebody else asked the
same question on Stack Overflow and
nobody really knew the answer and this
is a seven-year-old question so I don't
know but the point is we can go into the
FPGA CPU file and figure this out I
don't know the answer and the point is
it's a it's a trade-off you can decide
what you want so if you're like I really
want the best performance I don't want
to be multiplying when I don't have to
then you could change the code to make
it do that optimization or if you're
like a security researcher this is like
making all the alarm bells in your head
go off this is terrible like this is not
constant time operation this is gonna
have terrible side Channel I'm gonna go
in there make sure it always multiplies
by zero and so this is a really one
the reasons that risk 5 is really
exciting for security community if they
can get in and look at it and say you
know I don't have to do some crazy
analysis to figure out if this is going
to be susceptible to some of these
Spectre and melt down attacks I can just
go look at the code and then I can fix
it to make sure it doesn't so that
another thing we can do is customize the
ISA so like you said the risk 5 is a is
was designed from the ground up to be
extensible and modular so the base
instruction set is the the eye
instruction set which is really not much
more than add subtract load and yeah
load and store basically and so even
multiply is an extension which you're
like doing isn't it definitely need to
multiply it's like well you can do that
with ads you just keep adding if you
want to do divide you just keep
subtracting so if you really don't want
to waste the area for a multiplier you
don't need to similar with F this stands
for floating point which is a pretty
expensive piece of hardware in any in
any case and if you're just that power
CPU controller thing you definitely
don't need to plummet I don't know I
never do line movies but you probably
definitely don't need floating points so
you're not gonna waste area for that and
so the similar with a and D and other
extensions so the idea is the hardware
is modular and therefore the compilers
know that and it compilers in modular
and then addition to that there's a
bunch of other extensions which are kind
of in flight that are using this sort of
reserved space and those are reserved
for the risk 5 foundation
standardization extensions but there's a
separate part of the space which is
especially designed for people to do
whatever they want it's like the
foundation promises we will never use a
space it's only for custom extensions so
if you're a company and you're like you
know what I I have something that I
think is really special and it's going
to make my code on my hardware work
really well I want to custom extension
and I'm gonna put in this custom space
that's fine
you are like allowed and encouraged to
do that so other companies have the
concept of extensible ISAs but often the
the extensions are sort of baked in and
they kind of part of the product and
it's in wrist lag it's really in your
control like what makes sense this
mix-and-match so another big one is you
can just replace the whole CPU so if you
get this FPGA and you're like oh Kiko RB
32 is awesome but I designed my own
thing or I saw this other thing I want
to see how that works in comparison we
just swap it out and in
you know if everything's done right the
software should just work because that
is the true power of rs.5 is that you
pick the I say first and then you pick
the implementation before you had to
kind of decide like well let me look at
how much things cost and then I'll
figure out which company them to talk to
and then you know they're gonna kind of
you know torch for me once I try to like
change the next chip that I'm gonna do
but now you're just like not Museum is
five and if I don't find what I need
today I'm gonna you know go to somebody
else
all right still find what I need I'll
just design my own thing let's say I get
start designing my own thing and I get
about two-thirds of the way through and
I'm like oh wow like how to interrupts a
debugger dinner like interact again he's
getting like tricky then you're like
that's fine just go back and like look
for alternatives or go look at what
other people have done and see if you
can improve your implementation but the
point is you know these things should be
fairly interchangeable you can also
replace something that was like lower
performance with something higher
performance at you know to kind of have
this maintain the same platform but it's
people are coming out with like more and
more impressive or spicy to use you can
kind of just keep moving up on the on
the chain and finally you can modify the
platform so I know we're like very used
to on these sorts of badges I know
there's a cartridge so you can like add
extra hardware on the board but with
FPGA you can actually add extra Hardware
in the FPGA so I've used the two
projects that I saw when I was looking
around so I've always wanted to have an
FPGA driving neopixels because I feel
like the neopixel code is like overly
complicated for what it actually is and
so somebody actually did this on this
project called easy pixel as far as I
can tell this is not an open-source
project something it correct me if I'm
wrong but you know you could go read the
neopixel spec design some hardware that
does in the Oh pixel thing open source
it other people can put it on their
badge and you know use that thing and
another example is Nvidia open
source their envy DLA accelerator for
machine learning and so I five actually
as a demo where we take that open-source
thing and we add it to our open source
Linux FPGA platform and you kind of you
know enhance the whole system and all of
this you know you knew it in a few
minutes with an FPGA you don't have to
like debugging and debug debug you just
like try it and see if your pixels link
or not so Russ 5 Foundation really
recognizes the power of FPGAs and
they've started an annual contest based
around FPGA
so in 2018 was the first year that they
did this and they the challenge is
basically like let's get as many people
as possible to build risk 5 a few days
of course and so there were two two
challenges one was the smallest possible
miss 5 thing that was compliant to the
spec and then the next was the most
performant that was able to fit on given
a fee GA and you know they had tons of
people entering lots of techniques lots
of languages that people use people use
different languages like Beryl logs
Justin Beryl log chisels final HDL and
probably other things that I'm not aware
of that's just some C maybe I'm sorry if
I'm not saying your favorite language
and the cool thing is that part of the
requirement of the contest was that they
had to be open source that everyone
could see and then in 2019 we rounded
build on top of that by embracing the
how well risk 5 works of the security
community to have attacked resistant CPU
challenge so there were five attack
vectors that people needed to build
hardware that was recidivist resistant
to those and again they had to be open
source fpga implementations and I think
the 20/20 challenge will be announced
probably in the summer but I hope like
everyone here will be FPGA experts by
then and you can participate
so one last other cool project that's
kind of risk five an FPGA there's a
project also out of Berkeley called fire
sin and it is basically a project that
makes it easy to run stuff in the
Amazons FPGA that are like in the clouds
Amazon has this thing called f1 where
you can kind of login
fire up an FPGA and get your image on it
so it's sort of like there's a badge
somewhere in the cloud somewhere that
you are talking to and you're saying
this is what I want to put on that and
then I want it to like act like a
computer now that I've flashed it with
this image and the thing that's really
what it's really trying to do is not
necessarily accelerate what you're doing
and act like hardware and the most
efficient way possible is trying to tell
you exactly how it's going to work if
you actually tape out a chip like this
if you actually build a chip like this
it has this sort of memory latency this
sort of networking latency how well is
your data center going to perform if you
put a thousand of these together so I
think it's a really cool project and
it's not necessarily doesn't really have
anything to do with risk five except
without risk five they wouldn't have had
anything to sort of start with to put on
this project it would've been like well
let's sit here and like see if I get a
license from arm or see if we can design
our own processor so that we can like
start it's like no no we start with the
rocket ship repo and then we work on the
cool stuff so if you want to get
involved in verse 5 that member the
organization has working groups so when
I first joined sci-fi one thing I wanted
to do is actually get involved with the
risk 5 foundation I think that's more
excited about that been satisfied and so
when I started the thing that was sort
of on fire was a debug it was know
people are saying you can't use this
because we can't debug it so I worked
with the debug task group and I chaired
it for a while and so we came up with an
actual specification for debugging and
now both open source tool like open OCD
influence the risk 5 debug standard and
as well as tools like that Sega and
Lauterbach and I are also do using the
risk 5 standard but there's lots of
other working groups some of the hot
ones right now I think are the vector
extension task group and the security
and drug sentence task group there's
also groups that are just like in charge
of figuring out this compliance question
so that's like a huge value add for the
for the foundation but if there's
anything here that you think sounds cool
or if you have something that you think
would be better like if you got more
people involved in talking about it
definitely go to riff 5 website and see
if there's a group about it and I guess
it's free to join as an individual you
just have to check the whatever
membership conditions or something and
finally you know I wrote this slide and
then I came here yesterday and I talked
to a lot of people and I was like oh my
information is way out of date so I had
all these stuff that I thought we
thought we needed and so one thing was
like well we don't have any open source
fpga tools but like if you flash this
badge you're just like make and it like
compiles the fpga image and that like
blew my mind because that did not exist
a few years so I'm really excited about
I think Tim's talk tomorrow about Cena
flow which is the tool chain that
actually does this FPGA that makes it
possible to really go top-to-bottom open
source there's also a problem that I you
know encounter is designing your chip
itself with only open source tools so if
you take your sort of logic like the
thing you'll find when you go to look at
the repo for this SOC this FPGA there's
a bunch of code there and that has to
finally get translated down to like
little rectangles for the stencil in the
factory and those tools are ridiculously
expensive and kind of awful because
nobody uses them because they're
expensive and so they don't have any
incentive to make them better because
nobody uses them so I was really excited
to hear yesterday about this open road
project which is trying to solve that
problem in the open source come up with
a full tool chain from Farrell log to
GDS I think there's still a problem for
designing an ssee with only open source
IPS so things like ddr5 and ethernet phy
hand even USB they are you know people
built design them and they sell them so
they have really no incentive to
open-source them I know people like my
old research group at Stanford is
working on a it's called dragonfly so
they're working on an open-source PI but
I think there's a ton of work to be done
here and also building your chip and an
open-source fab so I don't know I think
right now like the technologies are
getting smaller and smaller and smaller
if we go back in time to the ones that
were really big so like you know at some
point it's big enough that you could
actually make it was like an exacto
knife and like stuff I think the hard
part is the chemicals right so
I'm curious to see if anybody can
actually come up with an open-source fab
similar to like a MakerBot type thing
and I know this is a hardware conference
but also software is so important so you
know if you like porting things if you
like using you know your oppa are tosses
and operating systems and you've got you
know different languages like you see do
you like to see running software is
really important to kind of help this
ecosystem spread so thank you very much
let's talk about your projects this week
and I'm really having a great time of
this conference