SVD_to_D: Generate over 100k lines of highly-optimized microcontroller mmapped-IO code in the blink of an eye

Steven Schveighoffer via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Wed Aug 2 06:31:40 PDT 2017


On 8/1/17 8:34 PM, Mike wrote:
> On Tuesday, 1 August 2017 at 14:52:51 UTC, Steven Schveighoffer wrote:
> 
>> Mike, I have to say still your talk in 2014 was one of my favorites. 
>> One of the things that was so impressive to me was the way you scraped 
>> the PDF to generate all the registers automatically. Having worked 
>> with STM chips (not ARM, but really basic 8-bit versions), I can 
>> definitely appreciate all the work this saves.
> 
> I'm not sure my work is worthy of such kind words, but thank you.

Sorry, it was awesome. You should own it. I think many people were 
impressed with what you were able to achieve, especially those who have 
dealt with embedded programming.

> The PDF screen utility is here: 
> https://github.com/JinShil/stm32_datasheet_to_d.  I'm not sure if it 
> still compiles and works, but I might need to update it someday.
> 
> It generates much better code and more complete documentation than 
> svd_to_d.  Most silicon vendors don't appear to invest much into their 
> SVD files, so the SVD files are often incomplete and lacking the 
> documentation that makes "good code + a good IDE = a substitute for the 
> datasheet".
 >
> If I were creating a professional product, I'd probably prefer scraping 
> the PDF over using the SVD files, or maybe some way to merge the two.
> 

Yes, if the datasheet is wrong, they probably hear about it more, and 
fix it more readily than some xml files. Much harder to fix etch than it 
is to update some software.

In addition, I bet the software engineers take both into account and 
defer to the spec, meaning the bugs in the SVD may not get reported.

I would prefer the more accurate picture if it were me. In fact, you may 
be able to give them a better tool to generate the SVD file from the pdf :)

-Steve



More information about the Digitalmars-d-announce mailing list