The Extremely Powerful FPGA Based Lock-in Amplifier

We’re mostly using the field-programmable gate array (FPGA) to implement any logical function that an application-specific integrated circuit (ASIC) could be performed. Normally, the FPGAs contain programmable logic components named “logic blocks”. The logic blocks are very useful components and can be used to perform complex combinational functions. In most of the FPGAs, the logic blocks also equip with some simple flip-flops or other memory elements! The main goal of this project is to implement a lock-in amplifier, by using the all-digital architecture on an FPGA. You must be wondered, “Why should I use the lock-in amplifier, as there are many other electronic components?” Well, good question! Here are the answers for what you’ve asked: First and foremost, if you’re using digital multipliers, ideal digital mixers and filters can be created easily. By this way, it removes all the possibility of added noise after digitization! Secondly, the lock-in amplifier has the ability to convert the signal’s phase and amplitude to a DC instantly. This can really help you saving up more time here. Last but not the least; you’ll be… Continue reading

The Light-up In The Dark Sparkling L-Systems

First of all, you must be wondered, “What is L-Systems?” Well, L-Systems is the short acronym for “Lindenmayer systems” and is a particular type of symbolic dynamical system with the added feature of a geometrical interpretation of the evolution of the system. Due to its ability to generate self-similar fractals, such as iterated function systems, L-Systems have been widely used in biology and botanical fields! The main goal for today’s project is to explore the creation of L-Systems on a field programmable gate array (FPGA). The processing capability of the FPGA that has been fully programmed using a hardware description language (HDL) is already inherently parallel by nature. The strength and versatility of the FPGA lies in performing myriad operation at once. In this case, they can be configured to perform assorted operations and calculations in different kinds of serial fashion. The biggest advantage of using FPGA in this project is the celerity and volume of calculations is greatly enhanced due to the application specific nature of the hardware. As a result, it yields greater advantages for highly iterative, calculation… Continue reading

SoC Design on an FPGA

You must be wondering, “What the heck of this SoC is?” Well, SoC is the short acronym of “System-on-a-chip”, where it refers to integrating all components of a computer or other electronic system into a single integrated circuit. Normally, SoC might contain digital, analog, mixed-signal and radio-frequency functions. SoC is typically being used for processors capable of running software, example like Windows or Linux. However, it’s not feasible to build an SoC for a particular application, an alternative is a system in package (SiP), which is comprising a number of chips in a single package. In other hand, SoC is more cost effective than SiP, especially in large volumes, due to its specification to increase the yield of the fabrication and its packaging is much simpler than SiP did. The main goal of this project is to take the processor and implement it on the DE2 Development and Education Board, where it uses the Altera Cyclone II Field Programmable Gate Array (FPGA). You can integrate it with a real time input and output to make it part of a real… Continue reading

The Propeller Laptop Based on PROP-6502

You love to try out different things, especially various types of projects that related with Propeller? If you did, then this PROP-6502 Propeller Laptop is going to spice up your life… If you refer to the above figure, you can see there’s a Propeller laptop based on a 6502 co-processor and 64K of static RAM. Normally, the propeller handles all I/O for the 6502. Beside that, it runs an integrated debugger, so you can program the computer whatever you want it to be! In this project, the Propeller acts as the programmable chipset for this 6502 laptop. Although you’re allowing to use an FPGA in this capacity, but you’ll have some problem, when you’re trying to implement visual debugger software inside an FPGA! However, thanks to the advancement of technology, the hardware prototyping has evolved from building-block hardware (TTL) to programmable hardware (PLA’s and FPGA’s). The hardware for this computer is minimal, where the entire address space of the 6502 is devoted to a single 64K static RAM chip. By the way, this system has no ROM in the 6502… Continue reading

The Things You Should Know about Complex Programmable Logic Device (CPLD)

Most of you here very familiar with the Arduino-based microcontroller and you do know about the characteristics and features of some sort of Arduino. We’re not discussing about Arduino today, but will move on to another interesting topic, the Complex Programmable Logic Device. Do you know that a complex programmable logic device (CPLD) is a programmable logic device with complexity between that of PALs and FPGAs? The building block of a CPLD is the macro cell, where it can contain logic implementing “disjunctive normal form” expressions and more specialized logic operations. If you want to cut down the development cost, then you should apply the CPLD in the design, where a CPLD is cheaper, faster and can be programmed with your ideal pin-out configuration for simpler PCBs. Or, if you’re looking for maximum speed and instant response, CPLD is also your first choice, due to its fast and amazing speed. Most of the CPLDs can be started at a 100 MHz, while microcontroller responds to interrupts at a few MHz. Although FPGA are well known than CPLD, but their analogy… Continue reading

The Smart Real-Time Edge Detection System

How much do you know about the edge detection? Well, if you want to know more about it, then you should spare some times and hang out here… For your information, edge detection is a terminology in image processing and computer vision, where it’s particularly in the areas of feature detection and feature extraction. It uses to refer to algorithms at identifying points in a digital image, at where the image brightness changes sharply. The main purpose of detecting sharp changes in image brightness is to capture important events and changes in properties of the world (Isn’t it sounds cool to you?). Do you know that by applying an edge detector to an image may cause it to reduce the amount of data to be processed and filtered out information that may be regarded as less relevant? However, if the edge detection step is successful, then the subsequent task of interpreting the information contents in the original image may be substantially simplified! The specialty about this real-time edge detection is this project uses a 2MP camera to capture the image… Continue reading