A check of the syntax of the OpenSPARC T1 Verilog source using Icarus Verilog was successful. However, Icarus Verilog doesn't know how to synthesize a latch. I am extending Icarus Verilog so that it does.

In doing so, I ran into a problem. The Icarus Verilog source code contains a call to the integral rounding function, lround. I'm developing on Solaris 9. libm.so.1 provides the functions required by those standards supported by the Solaris 9 OS and earlier versions. It does not include lround. libm.so.2 does. It provides the functions required by those standards supported by the Solaris 10 OS (including C99).

Naturally, I want to upgrade to Solaris 10. The Solaris 10 installation program determined that, to upgrade, "Disk Space Reallocation is required. Please go back and select a valid backup media." I have insufficient mass storage on the network for such a backup. Sun has a nice solution with the Sun StorageTek DAT 72 tape drive, but the interface is SCSI, which my Sun Blade 150 workstation lacks. Furthermore, the workstation has been classified as EOL, so I am encouraged to replace it rather than upgrade.

I intend to make a hardware purchase, a system configured to meet development needs.

At a DAC birds-of-a-feather session this summer, "Are Open Source Tools Ready for Open Source Hardware Designs?", it was clear that the OpenSPARC Community is interested in Icarus Verilog. Cosmic Horizon is contributing to Icarus Verilog because of OpenSPARC.