A lot have been covered at ARM Techcon 2010. I’ve blogged a few articles about ARM Techcon 2010, but there is a lot more to discover. A full set of documents and presentation slides shown at Techcon 2010 are available at http://vault.eetimes.com/armconference/proceedings/ The documents are divided in 2 main parts: Day 1: Chip Design Conference Day 2-3: System & Software Design Conference which are then divided into sub-directories with really (hmm) good names such as ATC-100, ATC-101… to ATC-165 so that everybody can clearly see what the subjects are. You’ll also have the Keynote and Industry addresses. Since this blog is more related to “System & Software Design” I’ve been through the pain of downloading all documents of this section and checking the subjects. You may do it for “Chip Design Conference” if you wish, I’m sure you’ll enjoy it. You’ll have one or two documents in each folder. If […]
Resources for Qualcomm Snapdragon: MSM7x30, MSM8x55, MSM8x60 and QSD8x50
The Snapdragon processors are the latest generation of Qualcomm mobile chips used in smartphones (e.g. Google Nexus One) and tablets (e.g. Dell Streak). There are currently 3 generations of Snapdragon chipsets: First-Generation: QSD8x50 chipsets consisting of QSD8250™ and QSD8650™ based on ARM11 core running at 1GHz, a 595 MHz DSP, hardware-accelerated 3D graphics with Adreno 200 GPU, integrated Bluetooth 2.0 and GPS capabilities, a 12-megapixel camera and 720p video encode / decode. Second-Generation: MSM8x55 chipsets consisting of MSM8255™ and MSM8655™ based on ARM11 core running at 1 GHz as well as MSM7x30 chipsets consisting of MSM7230™ and MSM7630™ running at 800 MHz. All second generation chipsets use Adreno 205 GPU. Third-Generation: MSM8x60 chipsets platform consisting of MSM8260™ and MSM8660™, dual-core CPU running up to 1.2 GHz with Adreno 220 GPU. The QSD8672 running at 1.5GHz will also be part of the third generation and samples will be shipped by the […]
Digital Signage Standard: Open Pluggable Specification (OPS)
A while ago, we discussed about Popai Digital Signage Standards, mainly focused on software and client/server interoperability. Intel has just released a new standard for Digital Signage: Open Pluggable Specification (OPS). Here’s the description of the specification on Intel website. The Open Pluggable Specification (OPS) helps standardize the design and development of digital signage devices and pluggable media players. Intel created the OPS to address digital signage market fragmentation and simplify device installation, usage, maintenance and upgrades. The OPS enables digital signage manufacturers to deploy interchangeable systems faster and in higher volumes, while lowering costs for development and implementation. Installing digital signage equipment based on Intel® architecture helps you implement scalable digital signage applications that can network easily with other equipment. This simplifies interoperability and application upgrades designed to meet the digital signage requirements of individual customers, while helping to future-proof technology investments. You’ll need to fill a form to […]
How to check open files for a process
While debugging your program, you may encounter the message “Too many open files”. One way to fix the issue could be to review your code and check open, fopen, socket and pipe calls are matched with close and fclose calls, but with large projects this may be cumbersome. A better way is to list the open files using the proc filesystem. I’ll use VirtualBox program as an example since this is running in our server. First, locate the process ID (PID): pgrep VirtualBox 3901 3950 Then list the file descriptor opened for process 3901 sudo ls -l /proc/3901/fd total 0 lrwx—— 1 root root 64 2010-10-05 14:52 0 -> /dev/pts/1 lrwx—— 1 root root 64 2010-10-05 14:52 1 -> /dev/pts/1 lr-x—— 1 root root 64 2010-10-05 14:52 10 -> pipe:[15825] l-wx—— 1 root root 64 2010-10-05 14:52 11 -> pipe:[15825] lr-x—— 1 root root 64 2010-10-05 14:52 12 -> pipe:[15829] […]
Resources for Telechips TCC890x: TCC8900 & TCC8902
Telechips TCC 890x is now widely used in low cost Android Tablets among other applications (automotive, portable media player..). Here’s the description provided by Telechips: The TCC890x is a system LSI for digital multimedia applications based on ARM1176JZF-S, an ARM’s proprietary RISC CPU core. It is designed for high-end multimedia entertainment devices such as car AVN, portable multimedia player and home entertainment. The TCC890x supports decoding and encoding various types of video and audio standards with software and dedicated hardware codecs including JPEG / MPEG1 / MPEG2 / MPEG4 / H.264 / VC-1 up to Full HD (1080p) and MP3 / WMA / EAAC+ / AC3, etc. In addition, TCC890x offers a hardwired 3D graphic accelerator to enrich next generation GUI and other graphical applications. Although, Telechips claims to support WinCE, Embedded Linux and Android, they now fully focus on Android development giving other OSes a lower priority. However, the development board […]
How to Generate CVS Changelog Automatically
There is a perl script called cvs2cl.pl provided by Red-Bean You can get the latest version thru cvs: cvs -d :pserver:[email protected]:/usr/local/cvs co cvs2cl/cvs2cl.pl Copy the script in a directory that belong to the path e.g.: cp cvs2cl.pl /usr/local/bin Then just checkout your project and run cvs2cl.pl to generate a ChangeLog that will look like: 2010-01-18 developer1 * app/cnxapp/Makefile: Added support for SMP8652 target 2010-01-17 developer2 * app/cnxapp/cnx_download.c: Added HTTP resume support [Bug 1250]: Fixed potential buffer overflow … where developer1 and developer2 are the linux usernames of the developers, app/cnxapp/Makefile, app/cnxapp/cnx_download.c the files that have been modified, and the comments correspond to the messages input during cvs commit. cvs2cl.pl also have other options such as XML output, date selection etc… Just type cvs2cl.pl –help to get the full options. Jean-Luc Aufranc (CNXSoft)Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, […]
Block CVS Commits without message
If you are in my case, and you found it difficult to make some people in your team make proper comments/messages or any comments at all (cvs commit -m “Description of the changes”) while committing their changes to CVS, here’s what can be done to block commit without comments and with short comments. Checkout the CVSROOT directory cvs co CVSROOT Edit verifymsg in CVSROOT as follows #Set the verifymsg file to run a script DEFAULT /usr/local/bin/validate-cvs-log.sh Create /usr/local/bin/validate-cvs-log.sh script (make it executable for all cvs users): #!/bin/sh # # validate-cvs-log.sh logfile # test that log message has some characters in it if [ cat $1 | wc -c -lt 12 ] ; then echo “log message too short; please enter a description for the changes” exit 1 else exit 0 fi Commit verifymsg cvs commit -m “Added script to set minimum message size to 12 characters” verifymsg That’s it ! […]
Embedded Software Quality Assurance (QA)
[ad#Google Adsense – Wide Banner] As for every software there needs to be quality assurance testing for embedded software with a special focus on reliability since this is often key in embedded systems. Software testing / QA may be a very controversial subject as everybody may have very diverging and strong opinions on how it should be done, and the way it is done also depends on the company culture (and size). So here’s the way I personally see the different steps to testing, please let me know if you feel otherwise in comments. Unit Testing: This is the lowest type of test (white box testing) where the developer should check the implemented functions work as expected Functional Testing: Although the software team should check if the main functionalities of the software work properly before committing the code (assuming you are using a version control system and you should), QA […]