
If you’re just starting out in your quest to build really cool electronic devices, you’ll find a ton of options ready for the beginner. The Arduino makes toggling pins dead simple, and the Raspi brings the wonders of blinking a LED from the command line down from the gods and into the hands of the common man. These are all software platforms, though, and if you want to learn digital logic with hardware the best option is still a drawer full of 7400-series logic chips.
[Colin O'Flynn] hopes to change this with a beginners board for digital logic hardware design. It’s called the BORA, or Binary explORer boArd, and brings digital logic to a convenient package that is far less frustrating than a breadboard full of logic chips.
The BORA is based around a CPLD – a cousin of the FPGA-powered devices we see from time to time – that allows any student of digital logic to program the device and fill macrocells with NANDs, NORs, and ANDs.
The Xilinx device used in the BORA has about 1600 gates that can be programmed; more than enough to complete all the projects in the online lectures [Colin] has put together. You can check out the documentation for the BORA over on the official site, and the demo video after the break.
Subscribe for weekly videos
While pretty cool, I think what SparkFun now sells would be pretty useful for learning TTL logic:
https://www.sparkfun.com/products/11006
They are little PCBs in the shape of the logic gate, with connectors for the inputs and outputs, just how you would draw them.
A bit expensive, though….
- Steve
that is probably useful for someone just learning logic/electronics
but a single cpld can have thousands of logic gates
and it looks like on their kickstarter you can get the board for less than the sparkfun kit
“…blinking a LED from the command line down from the gods and into the hands of the common man”
Beautiful.
FPGAs are great for learning logic.
You can even emulate 7400 series chips.
(replaced IC name with xxxxx) :)
module xxxxx(clk, r, o, ce, co);
input clk,r,ce;
output co;
output reg [9:0]o;
initial o = 1;
always@(posedge clk)
begin
if(r) o <= 1;
else if (!ce) o <= (|(o<<1))?o<<1:1;
end
assign co = o<=16;
endmodule
Can you guess what it is yet?
do u have to be an expert at maths to understand binery