Java On GPUs And FPGAs

There was a time when running a program on an array of processors meant that you worked in some high-powered lab somewhere. Now your computer probably has plenty of processors hiding in its GPU and if you have an FPGA, you have everything you need to make something custom. The idea behind TornadoVM is to modify OpenJDK and GraalVM to support running some Java code on parallel architectures supported by OpenCL. The system can utilize multi-core CPUs, GPUs (NVIDIA and AMD), Intel integrated GPUs, and Intel FPGAs.

If you want to try your hand at accelerated Java, there are some docker containers to get you started fast. There’ are also quite a few examples, such as a computer vision application.

Continue reading “Java On GPUs And FPGAs”

Smashed Laptop Becomes Stylish All-In-One

Many of us will have broken a laptop at one point or another, destroying the screen or smashing the case. It can be frustrating, as there’s a perfectly usable computer in there, trapped inside a broken husk of a body. [Matthew] saw this not as a problem, but an opportunity – and built a beautiful all-in-one desktop PC. (Video, embedded below.)

With a badly damaged Thinkpad laptop to hand, an ASUS monitor was sourced with a thin body and flat back, perfect for mounting hardware. An MDF base was created, on to which the laptop motherboard was mounted. A USB hub and audio amplifier were then added, along with a USB power isolator and soundcard to avoid problems with groundloops from the onboard headphone output. Speakers were Harman Kardon units salvaged from an old television, providing great quality sound for the build.

There’s plenty of great ideas in the video, from using epoxy for a strong permanent assembly, to a nifty hack to make the power button work. It has us contemplating a build for our own broken laptops in the junkpile. We’ve seen other creative all-in-one builds too, like this one inside a printer.

Continue reading “Smashed Laptop Becomes Stylish All-In-One”

New Depths For IMac Repair

There’s not much economic sense in fixing a decade-old desktop computer, especially when it’s the fancy type with the screen integrated into the body of the computer, and the screen is the thing that’s broken. Luckily for [JnsBn] aka [BEAN] the computer in question was still functional with a second monitor, so he decided to implement a cheap repair to get the screen working again by making it see-through.

The only part of the screen that was broken was the backlight, which is separate from the display unit itself. In order to view at least something on the screen without an expensive replacement part, he decided to remove the backlight altogether but leave the display unit installed. With a strip of LEDs around the edge, the screen was visible again in addition to the inner depths of the computer. After a coat of white Plasti Dip on the inside of the computer, it made for an interesting effect and made the computer’s display useful again.

While none of us, including the creator, recommend coating the inside of an iMac with Plasti Dip due to the risk of fire and/or other catastrophic failure, there’s not much to lose otherwise. Just don’t shove this one into the wall. Continue reading “New Depths For IMac Repair”

A Mini USB Keyboard That Isn’t A Keyboard

A useful add-on for any computer is a plug-in macro keyboard, a little peripheral that adds those extra useful buttons to automate tasks. [Sayantan Pal] has made one, a handy board with nine programmable keys and a USB connector, but the surprise is that at its heart lies only the ubiquitous ATmega328 that you might find in an Arduino Uno. This isn’t a USB HID keyboard, instead it uses a USB-to-serial chip and appears to the host computer as a serial device. The keys themselves are simple momentary action switches, perhaps a deluxe version could use key switches from the likes of Cherry or similar.

The clever part of this build comes on the host computer, which runs some Python code using the PyAutoGui library. This allows control of the keyboard and mouse, and provides an “in” for the script to link serial and input devices. Full configurability is assured through the Python code, and while that might preclude a non-technical user from gaining its full benefit it’s fair to say that this is not intended to compete with mass-market peripherals. It’s a neat technique for getting the effect of an HID peripheral though, and one to remember for future use even if you might not need it immediately.

More conventional USB keyboards have appeared here in the past, typically using a processor with built-in USB HID support such as the ATmega32u4.

A Turing-Complete CPU From RAM

Building a general-purpose computer means that you’ll have to take a lot of use cases into consideration, and while the end product might be useful for a lot of situations, it will inherently contain a lot of inefficiencies. On the other hand, if you want your computer to do one thing and do it very well, you can optimize to extremes and still get results. This computer, built from RAM, is just such an example.

The single task in this case was to build a computer that can compute the Fibonacci sequence.  Since it only does one thing, another part of the computer that can be simplified (besides the parts list) is the instruction set. In this case, the computer uses a single instruction: byte-byte-jump. Essentially all this computer does is copy one byte to another, and then perform an unconditional jump. Doing this single task properly is enough to build every other operation from, so this was chosen for simplicity even though the science behind why this works is a little less intuitive.

Of course, a single instruction set requires a lot of clock cycles to work (around 200 for a single operation). The hardware used in this build is also interesting and although it uses a Raspberry Pi to handle some of the minutiae, it’s still mostly done entirely in RAM chips, only cost around $15, and is a fascinating illustration of some of the more interesting fundamentals of computer science. If you’re interested, you can build similar computers out of 74-series chips as well.

A Modern Take On The “Paperclip Computer”

Back in 1968, a book titled “How to Build a Working Digital Computer” claimed that the sufficiently dedicated reader could assemble their own functioning computer at home using easily obtainable components. Most notably, the design utilized many elements that were fashioned from bent paperclips. It’s unclear how many readers actually assembled one of these so-called “Paperclip Computers”, but today we’re happy to report that [Mike Gardi] has completed his interpretation of the 50+ year old homebrew computer.

A view behind the computer’s ALU

The purist might be disappointed to see how far [Mike] has strayed from the original, but we see his embrace of modern construction techniques as a necessary upgrade. He’s recreated the individual computer components as they were described in the book, but this time plywood and wheat bulbs have given way to 3D printed panels and LEDs. While the details may be different, the end goal is the same: a programmable digital computer on a scale that can be understood by the operator.

To say that [Mike] did a good job of documenting his build would be an understatement. He’s spent the last several months covering every aspect of the build on Hackaday.io, giving his followers a fantastic look at what goes into a project of this magnitude. He might not have bent many paperclips for his Working Digital Computer (WDC-1), but he certainly designed and fabricated plenty of impressive custom components. We wouldn’t be surprised if some of them, such as the 3D printed slide switch we covered last month, started showing up in other projects.

While the WDC-1 is his latest and certainly greatest triumph, [Mike] is no stranger to recreating early digital computers. We’ve been bringing you word of his impressive replicas for some time now, and each entry has been even more impressive than the last. With the WDC-1 setting the bar so high, we can’t wait to see what he comes up with next.

Continue reading “A Modern Take On The “Paperclip Computer””

China X86 Chips Hitting The Market

Last year, fabless chip maker Zhaoxin announced they were readying a multicore x86-compatible CPU. According to media reports, the chips are showing up on Chinese marketplaces like Taobao shipping around March.

The company is a joint venture between the Shanghai Municipal Government and VIA Technologies, a familiar name in the PC business. It makes even more sense if you remember that VIA bought Centaur who had built simple x86 chips and used the simplicity to add more cache that more complex Intel and AMD chips. These fell out of the hobby market, but they’ve still been pushing forward providing simple designs that are inexpensive and consume low power.

Continue reading “China X86 Chips Hitting The Market”