add register diagrams

Signed-off-by: Sean Cross <sean@xobs.io>
This commit is contained in:
Sean Cross 2020-01-13 09:43:41 +10:00
parent 7947e4bc36
commit f3565e91ac
3 changed files with 38 additions and 10 deletions

BIN
img/rm-register-map.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

BIN
img/rm-registers.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

View File

@ -131,20 +131,46 @@
<section>
<h2>Reference Manuals</h2>
<img class="fragment" data-src="img/rm-example.png">
<h6 class="fragment">Datasheet &ne; Reference Manual</h6>
<img data-src="img/rm-registers.png">
<aside class="notes">
How many people here know what a reference manual is? These are documents that
you hopefully get from the manufacutrer of a chip that tell you how to use it.
These are the single most important part of developing a chip the normal way, as
they give you all of the information on how to use a chip. They can include
everything from which memory addresses to poke to cause a pin to become an output,
or how to set up the video block to output data. Here is the first page from
the reference manual for the i.MX6 used in the Novena. You'll note that "Chapter
1: Introduction" starts on page 197 -- everything before it was a table of contents
-- and is almost 6000 pages long. As an aside, reference manuals
aren't datasheets -- datasheets tend to include electrical and operating
information, and tend to be much shorter.
or how to set up the video block to output data. This is an example from the
i.MX6 reference manual, documenting the chip we used in Novena. This is from
midway through the I2C documentation. You can see they have some nice diagrams,
followed by a register map.
</aside>
</section>
<section>
<h2>Reference Manuals</h2>
<img data-src="img/rm-register-map.png">
<aside class="notes">
This is what a documented register looks like. When writing the drivers,
you usually spend most of your time studying these pages. These are invaluable
for getting to understand a brand-new chip. You can see here a register diagram
on the left, followed by a table of the register meanings, occasionally followed
by extra documentation on a particular register.
</aside>
</section>
<section>
<h2>Reference Manuals</h2>
<img data-src="img/rm-example.png">
<h6 class="fragment">Datasheet &ne; Reference Manual</h6>
<aside class="notes">
Here is the first page from that reference manual for the i.MX6 used in the Novena.
These tend to include lots of sections that are just explanatory, and this Introduction
describes the features of the chip along with background on why some of the choices
were made.
As an aside, reference manuals aren't datasheets -- datasheets tend to include
electrical and operating information, and tend to be much shorter. If you're
workong on software, you want a reference manual. If you're putting the chip on
a board, or you're trying to figure out specific values such as maximum frequency
or operating temperature, you want a datasheet.
</aside>
</section>
@ -153,8 +179,10 @@
<img data-src="img/rm-page-numbers.png">
<aside class="notes">
This documentation is very extensive. The start of Chapter 1 is on page 197, with all
previous pages being the Table of Contents. It's almost 6000 pages. It's very
extensive, because it's a very complicated chip.
previous pages being the Table of Contents. That's almost 6000 pages. It's very
extensive, because it's a very complicated chip. These documents are so important
that there are entire black markets dedicated to selling them. As open source people,
if we want a chip to be considered open, it needs to have open documentation.
</aside>
</section>