Documentation

November 30, 2006

Balancing How Firmware Waits on Hardware

A common question engineers often wrestle with is how long hardware will take to do a requested task so firmware can take the next step. Engineers implement different designs (both in hardware and firmware) depending on the length of time, and these designs have varying impacts on hardware and firmware […]
April 30, 2007

The (not so) Exciting World of Documentation

In a survey I conducted of several firmware engineers, lack of good documentation of hardware was the number one complaint. It is because firmware engineers so heavily rely on the hardware documentation to correctly do their job. Some of the engineers said that wrong documentation is worse than no documentation […]
February 28, 2008

Documenting Registers

Much of firmware development focuses on interfacing with registers. Documentation plays a key role in this effort since engineers must refer to it constantly to look up register and bit details. In particular, engineers need to generate or decode hex numbers, where the value of each bit must be clearly […]
March 31, 2008

More on Documenting Registers

Last month’s newsletter discussed some best practices for documenting register layouts, illustrating key points with a sample register diagram. One reader, Joel Saks, noted that my register diagram did not clearly indicate whether the bits were read/write bits or read-only bits. Joel makes an excellent point and also exposes one […]
June 30, 2008

Accurate Register Specifications

We have all dealt with the pain of inaccurate and out-of-date register information. Registers and bits are modified in hardware but the documents are not updated. Documents are updated but firmware is not changed. Or typos are introduced along the way. Failure to catch these problems typically results in hours […]
January 30, 2010

Register Design Eliminates Read-Modify-Write Issues

In the last two articles (here and here,) I discussed the dangers of read-modify-write operations on registers that create exposure to collision and corruptions by firmware. I discussed certain firmware and CPU techniques that can reduce these dangers, but not completely eliminate them. As promised, this month I will discuss […]
July 14, 2010

Verification: Can We Do More?

A comment in the GABEonEDA blog entry “Accellera Works Toward a Unified Verification Methodology (UVM)” recently caught my attention: Silicon respins due to design errors not only have not diminished in number, they have actually increased. This is an indication that complexity has grown more than the ability of verification […]
January 31, 2011

The Language Barrier

While living in Germany, I heard the following joke: Question: What do you call someone who speaks three languages? Answer: Trilingual. Q: What do you call someone who speaks two languages? A: Bilingual. Q: What do you call someone who speaks one languages? A: An American. If you were born […]