How do they make Verilog code for unknown ICs?

Swift Griggs swiftgriggs at
Mon Jun 20 15:36:27 CDT 2016

On Mon, 20 Jun 2016, Ian Finder wrote:
> The hardest part of the process is distilling the functional 
> specification of the part you are trying to replace. This is the heart 
> of the topic.

Hmm, okay so that's pretty much what I expected. They start with what that 
particular chip or ROM etc.. _does_ then they re-implement as a process of 
discovery. Does that sound accurate?

> There is no one approach, it is more art than science.

That's also what I expected. I guess as I was reading through other 
material, I got the impression that it might be more deterministic, but my 
gut feeling was right, I think. Nothing is ever *that* easy.

> For going from a functional specification to a synthesizable model, this 
> is simply writing HDL. I suggest this book, which covers the basics of 
> this process. 

Whoa. That's a pricey sucker. I'm probably not going to be able to make 
use of Verilog for a little bit yet. I'm still designing all my little 
"homework assignment" type projects on paper or using a tool I found in 
pkgsrc called "The Eagle Layout Editor." It's got some nice features (at 
least for me so far). I'll probably go with the Wirth book since it's a 
bit cheaper, but I still appreciate your suggestion.

> If you have no 100-level understanding of digital logic, start here: 

I have about a 100-level understanding, now. I took a digital logic class 
in college and I still have my book. It's "Fundamentals of Digital Design" 
I believe (or something very close to that). It was a while back, though.  
I understand boolean logic, changing base for numbering systems, etc.. 
However, I have a breathtaking lack of experience in applying that stuff 
to "real" digital logic. I'm just using online tutorials and guides for 
the moment, but the main one I focus on is this one:

So far, it's been great. I'm just finishing up some of the analog stuff on 
that same site, and I've greedily skipped ahead a bit to digital. However, 
I'm just now getting to TTLs and gates. I have to actually write out 
examples or test things physically to really "get it". However, I'm just 
plodding along. I have a nice little mess happening on my workbench in the 
garage. I'm about to move on past just using simple capacitors, resistors, 
and diodes to using some ICs. It's a little intimidating, actually. I 
thought I could get to the point I'm at now in about two weeks. It 
actually took about five or six weeks (just for an analog refresher). I'm 
still a bit shaky on some of that stuff, too. It's hard to test/see 
everything. So, some things I just read about, shrug, and keep going.


More information about the cctalk mailing list