We're nearing the end here.  First off, here's a link to the latest
set of slides:

http://www.traversaltech.com/files/speech4.odp

Lourens, Luc, and I are working on the title slide.  Almost done with
that.  As for the rest of the slides, I have a few concerns.

Slide 2:  Clearly, I am no good with GIMP.  The image is ALMOST there,
but the lines and text are ugly because I don't know how to select
regions with antialised edges.  I need someone with more skill to fix
that up for me.

Slide 3:  I think this is okay.  Comments?

Slide 4:  Ditto.  Tell me if you think this goes well with the words.

Slide 5:  There is dysonance between this and the speech.  Suggestions?

Slide 6:  Not a lot to do here.

Slide 7:  Ok?

Slide 8:  Ok?

Slide 9:  Dysonance worse than slide 5.  Ideas?

Slide 10:  Ok?

Slide 11:  Ok?


Below is the plaintext of the speech.  Ignore the # marks.  They're
rough guides to myself about pauses.  Some are unnecessary, while
others are important to correct intonantion and emphasis mistakes I
was making before.


Here you go:

[Root window with OGP wallpaper]
#Well, good afternoon, everyone.  My name is Timothy Miller, and I'm
the founder of the open graphics project.
# My usual soapbox is a keyboard, and I much prefer interacting to
lecturing, so if I say something that raises questions or needs
clarification, please feel free to ask.  I'll also take longer
questions at the end.
## Anyhow, I have been using Linux since 1995, and I've been an avid
fan and user of Free Software ever since.
# Historically, it's been hard to get graphics cards that work well
with Free Software.  Even now, most available graphics solutions are
proprietary cards with proprietary drivers.
They lack the advantages of open source, letting you make changes, fix
bugs, keep up with kernel upgrades, learn from them, or whatever else
you might want to do.
# Many people feel that proprietary drivers in Linux violate the GPL,
making it a potentially serious legal issue as well.  Some Linux
distros, for ethical reasons, simply don't come with these binary-only
drivers.  A particularly prominent one is Fedora.
## Well, my background is in graphics hardware design, and I thought
it would be interesting to try to do something about this.  So my
associates and I set out to make a truly open graphics card, and this
is what I want to talk to you about.  I'm going to cover our project,
our plan, our achievements and some of the unique challenges involved
in making hardware.

[Slide with OGD1 board pic]
# To get things started, we decided to begin with a bootstrapping
effort, which is a development platform.  We needed a facility to try
out and test graphics processor designs.
# So I'd like to show you something we've built.
# THIS is the OGD1 board, the open graphics development board.
## At the moment, it's functioning as a basic framebuffer for the OS
with a simple x.org driver.  And as a matter of fact, that's what is
displaying the presentation right now.  An OGD1 board is here in this
PC next to me.  As proof, I can give you a little demo that shows why
you don't usually want to go without hardware acceleration.
[do some dragging and stuff]
[while demoing] Some people have told me that they're willing to put
up with this.  They actually prefer to use the unaccelerated fb driver
over using a proprietary one, because they don't trust the proprietary
drivers.  Also, for a lot of common UI stuff, it's hard to tell the
difference. [minimize a window, open a menu]  So for an early
prototype, it's really quite usable.

[Slide with diagram of OGD1 with some Verilog code]
# OGD1 is build around an FPGA.  FPGA stands for Field Programmable
Gate Array, with the key words being "field programmable".  It's a
chip that you can reprogram.
# We develop our logic designs in a language called Verilog and
"compile" or "synthesize" it to instructions for the hardware.  These
aren't like instructions for a CPU but rather control bits that
specify signal routing and functions for logic gates.  With this basic
shell of a graphics card, we can program new designs into it at will.
# In addition to the FPGA, the OGD1 board also has memory chips, DVI
transmitters (two pairs of dual-link DVI, which is actually pretty
high-end), digital to analog converters, a TV chip, and a number of
user I/O signals available for extensions.

[Slide with URL for SVN repository]
# This board itself is a free hardware design.  Schematics are
available online, as is most of the Verilog code for the logic that we
currently have working.  It's all copylefted, so modifications and
derivative works are allowed.  And the software driver is free
software too, of course.
# And soon you'll be able to buy one and use it to make other hardware
designs.
## Of course, there are actually other FPGA prototyping boards
available on the market, but we believe ours is a better bargain.  It
has open source origins, which made the development less expensive.
And for our purposes, we've added additional hardware specific to
graphics.

[OGA Requirements and specs slide]
# Now what we want to do is take what we've done and use the FPGA as
an environment for developing a full-featured open graphics card.
# A lot of community discussion went into this.  Debate went on for
months, and the spec that came out of it, we think will satisfy 90% of
the users of free software desktops.
# We've cherry-picked the most important features from the OpenGL
specs from versions 1.3 through 2.0.  The result is a fixed-function
3D rasterizer and fragment shader.  And then we included some
additional features that weren't specified by OpenGL.

[Contributors slide]
# I just mentioned a lot of community discussion.  The open graphics
project is a real community effort.  Here are just a few of the people
who have contributed something significant to the requirements,
design, and many other things that keep a project focused and
productive.

[Organizational slide]
# I also mentioned earlier that I'd say something about the challenges
with making hardware.
# Many software techniques for design, development, debugging, and
testing have an analogue in hardware design, at least when it comes to
logic in an FPGA.  Circuit boards and integrated circuits impose a
whole other level of challenges.  The main thing is that hardware is
expensive to make.  But we believe we've developed a business model
that will solve this problem.
# Since a lot of money has to be handled, we absolutely must form
corporate entities.
# Traversal Technology is there to handle the commercial aspects and
hardware fabrication.
# And the Open Hardware Foundation is a non-profit corporation.  They
handle donations and function as a democratic body to represent
community interests.
# These two entities will be able to generate revenue streams in their
respective ways and use that money to fund the development of open
hardware.

[Other pieces slide]
# So our plan goes as follows.
# First, we build the development environment, OGD1.  That's done, and
it works, and we can already use it as a graphics card.
# Then we spec out the abstract architecture, OGA1.  That's done too.
# Now we have to do the rest of the pieces.
# We need to implement the OGA1 logic design and test it thoroughly on
OGD1 boards.  When the design is proven, we retarget it to a faster,
lower-power, non-programmable chip called an Application Specific
Integrated Circuit, ASIC for short.
# We've named this part TRV10, and it's the REALLY expensive bit.  In
order to to keep volumes up and prices down, we'll be selling it into
two markets.
# One is the OGC1 card for open source desktops.  The other is as a
bare chip for embedded systems.

[Open Hardware slide]
# Of course, we're not interested only in graphics.  We started there,
and that's where we're maintaining our focus.  We need to maintain
that focus in order to have an attainable goal that we can achieve in
a finite amount of time.
# But we ARE interested in the bigger picture, and that's why the OHF
was formed.  We hope that what will come out of this project is a
wider open hardware community.
# There are already lots of projects such as open cores where there
are some clever and talented people working away.  We want to form an
organization which will advocate and advance the interests of this
community.  We want to build an environment where enthusiasts can take
their designs and turn them into real hardware.  The OHF even plans to
fund development work.  Initially, the OHF is offering discounts on
OGD1 boards to open graphics developers, and as donations come in,
they'll direct that money to help more and more hardware projects go
form clever designs to clever open hardware.

[Getting involved]
# We're excited about being able to produce hardware with all of the
advantages of Free Software.  And we hope that some of you are too.
# If you would like to help out financially, you can donate to the OHF.
# If you are interested in hardware development, you can assist with
our design work.  Hardware design can be very different from software
development, but for those who are interested, we're developing tools
and learning aids that should make things easier.
# If you have software talent, you can assist with CAD tools, device
drivers, and other useful applications.
# And of course, if you're interested in using any of the hardware
we're developing, we'd be happy to discuss it with you.

[Questions slide]
# I want to thank all of you for taking the time to listen to me, and
I hope it was interesting.  Before I take questions, here are some
URLs you can write down and visit later.
# Okay, who's got the first question?


Other stuff for anticipated questions

[Programmable shaders]
As it turns out, a so-called modern programmable shader design is an
order of magnitude more complicated than the simple fixed-function
pipeline we've decided to go with.  For a given level of performance
for the most basic things, a programmable shader design requires
vastly more logic, a much higher clock rate, significantly more power,
and for us, infinitely more development time.  We just don't have the
resources for it.  Sure, there are things that you can't do without
programmable shaders, but those are limited mostly to lighting and 3D
texturing effects used by only the most aggressive games.  Actually if
I understand correctly, Windows Vista requires them for Aero Glass,
but this is ostensibly as a way to offload some of the UI
functionality form the CPU to the GPU.  It's not strictly necessary,
as you can observe when using MacOS 10 or Beryl on much older graphics
cards.

[When do you expect to release these products]
OGD1 is basically done.  We've identified all of the bugs.  There are
just some tedious steps remaining  to do before we can hand it off to
a board house and have them mass-produced.  The other major thing is
fabricating the OGA1 logic into TRV10.  That's a big open question.
One factor is the money.  Prices change, so we can't say exactly how
much it would cost, but we either need to raise a lot of money, or we
need to find partners who are interested in the technology.  The next
issue is fabrication.  Even if we could design and finish testing OGA1
infinitely fast, it would still take 6 months to get chips in our
hands.  So, in short, you can get OGD1 at the end of the summer.  You
can get consumer graphics cards, say, one year after we have enough
money.

["a good spec doesn't suffice instead of creating hardware?"]
There seems to be an increasing trend where hardware vendors are
choosing to support Linux but also choosing to provide only binary
drivers.  The result is an ever-increasing amount of proprietary
software that users of Free Software have to put up with.  This isn't
the direction we want to go.  With Open Hardware, we want to reverse
this trend, and the approach that we prefer is to develop our own
hardware when the vendors aren't willing play by our rules.  No matter
how well-documented something is, it's hard to work around an
undocumented bug when you have no way of finding out what's really
going on inside of the hardware.  Not only that, but the general idea
of open hardware puts freedom and knowledge back into the hands of the
users.  Open Hardware isn't just about tinkering; it's about
information and communication.

[If some other vendor were to release specs on their hardware, what do you do?]
I'm not sure that would change much.  Just because they release specs
one day doesn't mean they won't take then down another day or refuse
to publish specs on future designs.  You're always subject to the whim
of the hardware vendor.  In the early to mid 90's, a number of
graphics vendors were willing to publish specs.  Some went out of
business, while others were gobbled up by bigger companies.  Now we
don't have very many major graphics chip vendors, and they're fighting
each other over the Windows gamer market, with only passing interest
in free software platforms.  With open hardware, you never have to
worry about this.  So what the proprietary vendors do may have some
effect on the open hardware market, but only until they change their
minds again.  Besides, open hardware is its own interesting thing, so
if a graphics vendor decides to get a piece of our pie by releasing
specs, it may affect our graphics market share, but it won't affect
other open hardware projects.  The thing that's a double-edged sword
for us is that we're not interested in market share as much as we are
in freedom, which gives us different priorities.  If and when some
other hardware vendor decides to compete with us on our terms, we'll
just have to see what happens.



Special features we have that other cards don't
Some things that OGD1 would be useful for (PCI sniffing)
[Mention specifically PCI controller, memory, video?]

--
Timothy Normand Miller
http://www.cse.ohio-state.edu/~millerti
Open Graphics Project
_______________________________________________
Open-graphics mailing list
Open-graphics@duskglow.com
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to