EDA tools on Fedora while diving with the electrons

This blog entails my contribution to the Fedora Project and some thoughts about the EDA/Semiconductor industry.

[FEL]: Icarus Verilog bug statistics

Cary R. published some statistics about the amount of time spent in bug fixing for the most widely used opensource verilog simulator, Icarus Verilog. I’m quoting:

Excluding the VHDL work, so far in 2009 we have had 25 invalid bug reports, 87 valid bug reports. Eight of these are still open. It took on average 12 days to fix a bug and the open bugs have been open for an average of 177 days. That attached plot shows the details much better.

Icarus Verilog development team is heading towards the release of 0.9.2, which will be realeased pretty soon. If you are encountering some other bugs on 0.9.1 (the current fedora iverilog version), please do file bug reports so that they can be fixed for the 0.9.2 release.

In the past, I’ve described how to use iverilog for post-synthesis simulation and how to access documentation quickly to ensure interoperability and other verilog variants. If you are encountering issues while dealing with FPGA and iverilog, please feel free to share it with us.

Filed under: eda, iverilog

Don’t say No cuesheet support to Trance Music !

Unlike many people, I love Trance music and not only I like it but it’s the only type of music I can listen anywhere and anytime, while sleeping, while working 10 or more hours straight on complex VHDL/Verilog designs, … and still be productive.

However Amarok (the player I advised people to use at that time) developers dropped Cuesheet support since they move towards the 2.0 branch. Some of the other trance addicts have already filed RFE, but now nearly two years already still the 2.* series is pretty useless to be proud of.

  • no cuesheet support.
  • no ipod support.
  • cover fetching feature broken.
  • text on widgets overlap on the gui like spaghetti.

I have some complex Verilog designs to complete and yet to interface with analog. These lack of features on media players are not good for my productivity and neither can I vote the “tunes of the week” in the Trance community.

Since I have some friends who are DJs, I receive their two hours livesets straight from the studio along with the cuesheet (nowadays I am using the IPOD as a USB stick to such transfer).

I had to dual both Centos-5 and Fedora-12 so that I can still use Amarok 1.4 for my work. But soon the lack of software compatibilities between CentOS-5 and Fedora-12, I decided dual boot is not making me productive.

For about two months now, I’ve been experimenting many music players, both opensource and proprietary. The one which matches most of my needs was Rhythmbox. The latter was. in the past, among the first software to yum remove after a clean install. I’m impressed with Rhythmbox autosupport for cover transfer while transferring music from Rhythmbox to my IPOD nano. The GUI of Rhythmbox is not WOW, but at least it’s far more stable than that of Amarok 2 spagettis.

I spent days looking for cuesheet support or related plugins online. For some reason people out there use cuesheet to split last mp3s only. But why ? In the Trance Community a DJ releases a set, every week one will hear a new remix of the same music. Splitting also refers to the zero offset issues most media players suffer and one must manually rename all the remixes by hand. Doesn’t it defeat the purpose? I’ve even decided to port that on Rhythmbox. But python, oh dear after one week, I decided that it was too software for me to play with. Hence the quickest way for me to get cuesheet support and start playing with Verilog and also learn the new features of the VHDL IEEE standard 1076-2008, was to write a simple Tk script coupled with a basic python script to interface with DBUS.

For the time being, these scripts do the basic stuffs.

  • Read the cuesheet file of the mp3 being played on rhythmbox
  • List all the tunes on a tktable
  • Allow double clicks to switch tunes within the same mp3
  • On track change, restart Tcl/Tk. This could be automated if I find time. But since each mp3 plays for about 2hours non-stop, restarting the script doesn’t affect much.

$ wish cuesheet.tcl

If one likes amarok, I believe, tuning the python script one can get this cuesheet support on amarok too.

Filed under: Uncategorized

Report from France: FEL at JM2L – Nov 27-28 2009

Fedora Electronic Lab and Upstream developers were represented by Laurent Charpentier, whom I sincerely thank for his presentation last friday and booth attendance. Photos in this blog post are from Animatrix30.

Report of the JM2L 2009 event in Sophia-Antipolis, France – Nov 27-28 2009

by Laurent Charpentier

The JM2L event (Journée Méditerranéennes du Logiciel Libre), dedicated to opensource software, took place at the University of Nice-Sophia, France.

Sophia-Antipolis, one of Europe’s largest technology parks, is home to hundreds of high tech companies, primarily in information technology, telecommunications and biotechnology fields.

Exhibitors came on Friday morning to set-up the booths. We had about 15 booths including one for Fedora Project (and Fedora Electronic Lab sub-project).

Booth setup:

Doors opened on Friday afternoon with a good mix of visitors coming from the University (students, teachers) and professionals from the Sophia technology park.

The event had 30 conferences, 6 technical workshops. Several rooms were also set-up for Linux installation (“install party”) and video games (“LAN party”).

At the Fedora booth I presented Fedora 12 and Fedora Electronic Lab 12, the latest version of these distributions. Most of the Fedora visitors at the booth came to know about FEL. HDL design, simulation and PCB design were among the fields of interest. I gave some demos of Kicad (PCB) and KtechLab (simulation). I also had questions about Fedora distribution: what is Fedora? what is Fedora compared to Ubuntu? I also had one installation to perform on a (old) Samsung X30 notebook, but the F12/F11/F10 live CDs failed to run (X server failed to run). It worked however on Ubuntu the previously installed OS.

On Friday I gave a presentation of Fedora and Fedora Electronic Lab (presentation is available on FEL’s website, pictures on flickr using “jm2l09″ and “fedora” tags). I had about 20 persons attending the presentation, some of them were Electrical Engineers from local semiconductor companies (Infineon, Texas-Instruments, ST-Ericsson, …). The attendants were very pleased to know about the FEL initiative: it is now easier to find opensource tools that are ready to use.

Some of the questions were: why some projects are not included in FEL (systemC, Scilab, openaccess, …)? It is due to licensing restrictions. Does FEL work closely with FPGA vendors to use/integrate opensource tools into their design flow?

Overall, JM2L was a good event promoting opensource software and strengthening the opensource community. JM2L had a lot of conferences including technical sessions and workshops to present opensource software to a broad range of visitors.

Laurent Charpentier

Filed under: FEL, events

Hello Planet Qi Hardware

First, I would like to thank Wolfgang Spraul for adding my blog to the Planet Qi Hardware: Freedom Redefined.

So, hello Planet Qi Hardware :)

I’m Chitlesh Goorah (a digital IC design engineer) and contribute to the opensource EDA community through the Fedora Project during my spare time. Together with a couple of contributors and upstream developers, we hope to provide opensource Hardware communities with opensource EDA software that satisfy real life electronic design flows through Fedora Electronic Lab.

While my passion is ASIC design, we try our best to provide “design flow” solutions and interoperability rather than point software. That said, I believe this blog post about OpenMoko will give you an idea where FEL stands.

Please feel free to contact me if you feel we can improve the bridge between opensource Hardware communities and opensource EDA software communities.

Filed under: blog

[FEL]: Power Estimation at transistor Level

One of the least advertised features of IRSIM is its ability to quickly estimate power of large VLSI circuits from gate level netlists (.sim).

To install IRSIM on Fedora (default on Fedora Electronic Lab):

# yum install irsim

This estimation is based on the

  • ‘three-level quantization scheme’, where the voltage can assume 3 values (GND, VDD/2 and VDD). It is fairly more accurate than the ‘two-level rail-to-rail model’.
  • measurement of glitching power.
  • estimates reasonably close to those that can be derived by measuring currents with a SPICE simulator with an error of less than 20% and a speed up of about 500 times.
  • incremental power measurement.

Filed under: asic, opencircuitdesign

[FEL]: Verilog::Language update to 3.222 on Fedora

The perl-Verilog-Perl will now obsolete perl-Verilog as a result of a Fedora packaging naming convention.
Thanks to Wilson Snyder, the version 3.222 was just pushed to Fedora Testing repositories with the following bug fixes.
  • Fix missing ; in ContAssign::verilog_text, bug177. [Nicolas Wilhelm]
  • Fix multi-dimensional arrayed typedefs, bug183. [Vesselin Kavalov]
  • Fix “assert () else” action_blocks. [Vesselin Kavalov]
  • Fix typedef scoping under anonymous begin blocks.
  • Fix `define argument mis-replacing system task of same name, bug191.
  • Fix SystemPerl hitting “undefined find_interface…” in 3.220.
  • Fix erroring on strings with backslashed newlines, bug168. [Pete Nixon]
  • Fix compile error on RHEL3 with gettext, bug169. [Marek Rouchal]
  • Fix line number miscounting with `pragma.
  • Add parsing of “assign”, including SigParser::contassign callback, Netlist::ContAssign object, and related accessors.
  • Several code speedups to vhier, Verilog::Netlist, and the parsers.
  • Add Preproc::getall to fetch all text instead of line-by-line.
  • Add Parser::new(use_cb_{name}=>0) option to speed parsing.
  • Add SigParser/Netlist::new(use_vars=>0) option to speed parsing.
  • Fix deep defines causing flex scanner overflows. [Brad Dobbie]
  • Fix preprocessing commas in deep parameterized macros. [Brad Dobbie]
  • Fix Preproc::defSubstitute not being called on parameterized macros.
  • Fix Perl 5.8.8 compile error, bug115. [Marek Rouchal]

Filed under: fedora, perl

Some Licenses kill opensource mechanical design flows

Electronic design is about design flows, rather than point software. Multiple software are needed for achievement multiple design flows.

However when one software breaks, the whole design flow becomes pointless. This is why we pay great attention to the design flows under the FEL collection.

For the real life, one might also need software for the mechanical body design. The current and widely used opensource mechanical design tool, OpenCascade suffer from licensing issues with its redistribution. The OpenMoko design team uses Heekscad. The latter requires a dependency on OpenCascade. Without OpenCascade in Fedora repositories, Heekscad will not pass Fedora package review.

This is a major blocker for anyone who wants to create a Fedora Spin for mechanical design. This licensing issue limits Fedora from shipping them.

Filed under: fedora

[FEL]: DIA for System Design and documentation

Dia is known to seduce some system level designers and is used to describe different block levels for embedded design.

Fedora has just received some additional shapes for digital blocks which will improve user documentation experience, through neat functional diagram drawn by dia. They should reach fedora repositories in a day or two.

Installation:

# yum install dia-Digital dia-CMOS dia-electronic dia-electric2

Filed under: FEL, artwork, fedora

Announcing Fedora Electronic Lab 12

Hello there,

On behalf of Fedora Electronic Lab team, I have the pleasure to announce the fifth consecutive release of the Fedora Electronic Lab 12 Livedvd.

This Livedvd is available for immediate download.

This release highlights Fedora’s commitment in strengthening the electronic hardware communities with an advanced Electronic Design Automation (EDA) environment. The latter

  • was optimized to support OpenMoko development team.
  • entails a peer review solution for hardware design.
  • has Eclipse 3.5 series for VHDL/Verilog IPCores development and documentation.
  • entails the latest gEDA/gaf release, openocd, simulators for 8051 microcontrollers,…
  • ….

Please find in-depth details in the Release Notes and Flyer.

Website
Mailing list : fedora-electronic-lab-list [AT] redhat DOT com
Developers

Filed under: FEL, fedora

[FEL]: xcircuit 3.6 series tagged as stable

Tim Edwards has tagged version 3.6 to stable, and version 3.7 is the new development version.

The stable release will only be updated with bug fixes, while all new development and experimental stuff will go into the development release.

Users will experience fast UI responses with the new stable release 3.6.163, which has just been pushed to Fedora updates. This release also unleashes extra capabilities for managing big IC projects, which was lacking in the 3.4 series.

Filed under: FEL, eda

Profile

Name : Chitlesh Goorah
Leisure: Fedora Electronic Lab

My Last.fm’s playlist

Clunixchit's Profile Page

Je touittes – I tweet

 

December 2009
M T W T F S S
« Nov    
 123456
78910111213
14151617181920
21222324252627
28293031  

Recent Bookmarks