Thursday, April 28, 2011

Face / Moving Detection Using Kinect + BeagleBoard-xM

1. OpenCV Demo


Beagleboard xM now works fine with kinect + opencv just need gles demos.

2. Auto Chasing Turtle - Autonomous Control With Kinect and Human Facial Detection
Auto Chasing Turtle - Autonomous Control With Kinect and Human Facial Detection

This creative and fun hack was brought to us by YouTuber HirotakaSter who managed to create a walking robot with a Kinect head that can recognize human faces and then approach them once they are successfully detected.

3. OpenFrameworks + kinect + Android

The SIProp project's members finissed to make "OpenFrameworks x kinect x Android" Development Environment and to run it on Android(armadillo & beagleboard). Watch demo at

Wednesday, April 27, 2011

Google Challenges Apple, Netflix, Hulu with Video Rentals Services

Google is about to launch a premium video on demand service to be called “YouTube Store.” Netflix is now larger than Comcast suggests a symbolic “changing of the guard” and movement toward IP-based video-on-demand. YouTube clearly sees an opportunity to diversify revenues and evolve into one of the leaders of the next wave of “TV” (IPTV) or IP-based video delivery.

See more in

BeagleBoard -XM

BeagleBoard -XM

  • Super-scalar ARM Cortex TM -A8 1GHz
  • DM3730 with C64x+ 800MHz
  • High Performance Image, Video, Audio (IVA2.2™) Accelerator Subsystem
  • 512-MB LPDDR RAM
  • High-speed USB 2.0 OTG port optionally powers the board
  • On-board four-port high-speed USB 2.0 hub with 10/100 Ethernet
  • DVI-D (digital computer monitors and HDTVs)
  • S-video (TV out)
  • Stereo audio out/in
  • High-capacity microSD slot and 4-GB microSD card
  • JTAG compatible with XDS510 USB, $89 XDS100v2, etc
  • Camera port

Tuesday, April 26, 2011

TI DM6467 Memory Map

TI DM6467 EVM Multi-core Examples (256 MB Total Memory)

Address RangeSizeDescription
0x80000000 - 0x877FFFFF120 MBLinux
0x87800000 - 0x87FFFFFF8 MBCMEM
0x88000000 - 0x8F9FFFFF122 MBDDRALGHEAP
0x8FA00000 - 0x8FDFFFFF4 MBDDR2 (BIOS, Codecs, Applications)
0x8FF00000 - 0x8FF0007F128 BDSPLINK (RESET)
0x8FF00080 - 0x8FFFFFFF< 1 MBunused

This 256MB of physical DDR2 memory is shared between the ARM and the DSP, i.e. both processors can access all of the DDR2.
The physical memory addresses are the same for the ARM and the DSP on DM6467 and range from 0x80000000 to 0x90000000.

How to change the memory map? See

Sunday, April 24, 2011

Verilog Program Language Interface (PLI) and Verilog Procedural Interface (VPI)

According to "The Principles of Verilog PLI", Programming Language Interface (PLI) is a way to provide Application Program Interface (API) to Verilog HDL. Essentially it is a mechanism to invoke a C function from a Verilog code. The construct which invokes a PLI routine in a Verilog code is usually called a system call. The common system calls built-in to most Verilog simulators are $display, $monitor, $finish etc.

The latest version is PLI 2 or Verilog Procedural Interface (VPI).

The following link shows how to use PLI with VCS:

A Verilog LPI website

give a good tutorial:

How it Works
Example - Hello World
C Code
Verilog Code
Running the Simulation
Writing PLI Application
PLI Application Specification.
Calling the C function.
C Code - Basic
Verilog Code
C Code - Full
Linking With Simulator
Counter Simulation Output
PLI Routines.
Access Routines
Access Routines Reference
Program Flow using access routines
Handle to Objects
Value change link(VCL)
Utility Routines
Classification of Utility Routines
Other Useful functions
PLI Example
Clock Generator
Clock Generator HDL Wrapper
Counter Monitor
Counter Monitor HDL Wrapper
Counter TestGen
Counter TestGen HDL Wrapper
HDL TestBench Top
Sample : Test File
Sample Ouput
Verilog Procedural Interface (VPI)
Steps : Writing Application Using VPI
Write a C function
Associating C Functions with a New System Task
Registering New System Tasks
Invoking System Tasks
Linking with Simulator
VPI Routines


Blog Archive

About Me

My photo
HD Multimedia Technology player