Chip and component shortages continue! This week's episode covers Ford and GM automotive supply chain problems and EMMC wear chips for Tesla cars.
KiCon 2019 is a user conference for the popular open source CAD program KiCad. Happening April 26th and 27th 2019 in Chicago IL, this is the first and largest gathering of hardware developers using KiCad. Talks at the conference will span hardware design, revision control, scripting, manufacturing considerations, proper library management and getting started developing the underlying tools. All announced talks have been listed on the conference site.
Visit our Public Slack Channel and join the conversation in between episodes!
Parker is an Electrical Engineer with backgrounds in Embedded System Design and Digital Signal Processing. He got his start in 2005 by hacking Nintendo consoles into portable gaming units. The following year he designed and produced an Atari 2600 video mod to allow the Atari to display a crisp, RF fuzz free picture on newer TVs. Over a thousand Atari video mods where produced by Parker from 2006 to 2011 and the mod is still made by other enthusiasts in the Atari community.
In 2006, Parker enrolled at The University of Texas at Austin as a Petroleum Engineer. After realizing electronics was his passion he switched majors in 2007 to Electrical and Computer Engineering. Following his previous background in making the Atari 2600 video mod, Parker decided to take more board layout classes and circuit design classes. Other areas of study include robotics, microcontroller theory and design, FPGA development with VHDL and Verilog, and image and signal processing with DSPs. In 2010, Parker won a Ti sponsored Launchpad programming and design contest that was held by the IEEE CS chapter at the University. Parker graduated with a BS in Electrical and Computer Engineering in the Spring of 2012.
In the Summer of 2012, Parker was hired on as an Electrical Engineer at Dynamic Perception to design and prototype new electronic products. Here, Parker learned about full product development cycles and honed his board layout skills. Seeing the difficulties in managing operations and FCC/CE compliance testing, Parker thought there had to be a better way for small electronic companies to get their product out in customer's hands.
Parker also runs the blog, longhornengineer.com, where he posts his personal projects, technical guides, and appnotes about board layout design and components.
Stephen Kraig began his electronics career by building musical oriented circuits in 2003. Stephen is an avid guitar player and, in his down time, manufactures audio electronics including guitar amplifiers, pedals, and pro audio gear. Stephen graduated with a BS in Electrical Engineering from Texas A&M University.
Special thanks to whixr over at Tymkrs for the intro and outro!
Welcome to the macro fab engineering podcast. We are your guests Ken Gracie.
And I'm Chip Gracie.
And we are your hosts Parker Dolman.
And Steven Craig.
This is episode 166. A quick announcement before we jump into the podcast, key con 2019 is a user conference for a popular open source cats program KitKat happening April 26th and 27th 2019 in Chicago, Illinois. This is the first and largest gathering of hardware developers using key CAD talks at the conference will span hardware design, revision control, scripting, manufacturing considerations, proper library management and getting started developing the underlying tools. All announced talks have been listed on the conference site which is in the show notes, so go check that out.
Ken Gracie is leader and CEO of parallax. Ken is a UC Davis alumni who lives and breathes parallax products and has done so around the world. He is all about family working smart, having fun mountaineering and riding his unicycle. Chip Gracie is a parallax founder. He had his first major introduction to programming and electronics when he was 13 years old with the Timex Sinclair computer. After chip graduated high school, he and his techie friends from the seventh grade started parallax at their homes in 1987. chip design the first low cost tools for the PIC microcontrollers that led to the development of the first basic stamp module released in 1993.
So Ken and chip, what is the parallax story?
It's long at this point.
It's long. It's like a saga. And there are different phases to it. Yeah, so
87, that was when I was born, same here.
And I was young.
Well, Chip, you should probably talk about what it was like back in those days, just for a minute or so like all the people stop at our house for days, and they would smell bad and wouldn't leave.
Right. Okay, well, I've always been into electronics. And then I got into computers, when you know that Timex Sinclair became available, our eighth grade teacher had that and then I saved up I did a paper out for a long time. And I eventually had enough money to buy an Apple two. And I really learned a lot using the Apple two. And so I had designed a lot of little things for that, maybe notably some development systems that would allow you to use the apple two as a development platform for the Vic 20 and Commodore 64 computers. So I made a cross development system that used a popular assembler on the Apple two called while I had Merlin and before that I was using Lisa, they were both pretty good. And I actually liked Lisa better. But we had to stick with Merlin because that's what the game developers wanted. So I had a little card that I designed that plugged into the Commodore 64 And then attached back to the game port on the Apple two. And it would allow you to download programs during assembly on the PC. And then you can then run and debug them live using non maskable interrupts as the user code ran on the other machine. So I sold I think several 100 of those things altogether, and they went to Electronic Arts and Activision serious software, a lot of those kinds of companies and that and I was 15 at the time, and I remember building those circuit boards, you know, doing all the soldering, getting the manuals, printed at a print shop, copying the discs, boxing them up into little packages, then go into the local convenience store to ship them off. And that was all stateside, of course. And that was kind of before parallax. But then, working with me at that time was my friend from the seventh grade Lance Wally. I met him at a seventh grade Computer Club. And he came there with like an, I think it was an 8k memory card he had built for the Vic 20. And he had hand soldered it and it was kind of interesting. And so he understood what what transistors did. And it took me a while to get my head around that but we worked together on a lot of things. And eventually, after we got out of high school, we both graduated in 86. We wanted to do something so we started parallax. And our first products were just expansion cards for the apple, two Gs like memory cards and sound digitizers things of that nature. And then we went off and did other things. We made a billiard room timer that used x 10 protocol to control lights over pool tables and then tabulate what each Customers tab was. And eventually we got into making development tools which is when I was pretty much doing all the engineering that and Lance was running the company kind of like Ken does today. And but making, you know, the development tools was kind of like going back to the first thing I built for the Apple two and the Commodore 64. So that's kind of been our mainstay. It's kind of where my interest lies. And so I like making things that other people use to make other things. And everything we've done today has pretty much revolved around that kind of thing. We haven't made any, like special dedicated products that did anything, everything we've made is extensible and used to build other things.
So where did the name parallax come from? Well, we
were going to be called Path Incorporated. And then I had gone off, we had a exchange student from Finland in the 8586 school year. So in the summer of 8687 87, I'd gone off to Europe to see him and I did the Interrail thing and went all over. I saw Ken there he was there with his German classroom High School. He was Ken was two years behind me in school, He's two years younger. But when I was gone last found that path Incorporated was taken. So then he came up with parallax. So when I came home, that was the name of our business.
And it just stuck, right. Yep. So I'm curious in the mid to late 80s. You being 15, and developing these products on your own? How did you learn all of these things? How did you at that age, learn to get into it and figure it out?
Just a really intense interest. I remember just really well, I was fascinated by video games, I really couldn't get my head around how they worked. And as far as I understood, they were kind of infinite, like Battlezone if you remember that game where you drive around the tank, you know, I probably had like a 4k ROM in it. But to me, it was just very mysterious. And so I go to RadioShack where they sell computers. And I'd ask the guy there, how do you do this? How do you make a ball bounce, and no one had any answers to anything. So when I was in the eighth grade, our teacher started using these Timex Sinclair computers to teach programming and logic. And that's when things kind of congealed for me. And then my dad, he was a chemical engineer at air jet. And he would bring home an apple two that he had on the weekends that he used for his scientific stuff. And I just learned a program on that. And the apple two was a lot of fun. And Steve Wozniak did a really high quality job with the whole thing. You know, the ROM was high quality when I started working with a Commodore 64 and Vic 20. I thought maybe a lot of mistakes had been made. But I just didn't realize it was the act was a perfectionist that he did everything, right. And the Vic 20 and Commodore 64, or more like how everything else was going to be in the future, you know, it kind of barely works and isn't that reliable, but that's just what everybody ingests. And they suppose this is normal. But the apple two was outstanding. And so I really had developed a taste for, you know, things working really well and an expectation that they ought to work right from those early days.
So Ken, how did you get involved with parallax?
Oh, it's actually I was probably the first employee at parallax and I was in college making cables and stuff for chip and Lance. But you know, watching for a number of years curiously, from the distance was a lot of fun. But about five years after I was doing my own career, Chip and his partner were having a parting of ways. And this is a 97. And it was a tough time for the business. But I think I just started helping chip with some marketing from a distance while I was doing my own, pursuing my own career. And then sooner or later, I just wound up working really for him in Rockland as a girl, and it's just been a lot of fun.
But even before can work there, so he came in at year 10. His wife had been our controller for maybe what three years prior to that. She had been Ken married her 95 and she had been a cost accountant at Pepsi, but she started working for us, and maybe it was 9495. We'll probably after you were married, right. And then she retired, sorta, if she wanted to go do other things about what a year and a half ago,
right? She'd had enough of the excitement.
Oh, there's a lot of stress. You know, there's just a lot of stress, making ends meet and over 30 years, it can become kind of grueling, and we've been at this now for 32 years.
Yeah, I mean, here's the truth. Like it's actually kind of easier to grow a business but businesses go up and down and we've had to disassemble and then grow up several times over that period. And like Chip said, in the very beginning sort of change trajectory and things around you're always changing but we are have, you know certain constants, but it's a learning process? Right?
Right, right, more learning than you can stand?
Well, well, and with the fact that parallax began in 87, and you were building development tools, in 93, is when you offered your first actual IC, correct.
It was nine, let's say, the BS one, that yeah, that was the module based on the microchip PIC parts. And then we worked with a company in 96. To design a chip, which works like the pic 16 C 5x. Line from Microchip, it was, like, had about 20 times the performance. And that was our first involvement in any kind of chip project. But that was enough to kind of, you know, give me some framework in which we could begin our own project. So I started working on the propeller one ship in 98. And that was finished in 2006. So that was an eight year project.
Wow, what what made you decide to go to chip development?
Well, I really liked programming microcontrollers, I really liked the idea of a microcontroller, you know, whole system and one little chip. And so that really fascinated me and having programmed picks quite a lot. And every machine I ever worked with, I worked with an assembly language primarily. So I had some ideas about what ought to be. And so the art chips like the propeller chips are designed to be programmed in assembly language, you can certainly write compilers for them. But they're very friendly and ergonomic to the programmer at the assembly language level. And that's all with complete intent. And the way things have gone otherwise in the world is that if you look at a modern assembly language, it's almost unreadable, you know, as lots of consonants stacked up, and you can't figure out what these mnemonics mean. And what's going on is, those things are designed really with only high level language compilation in mind. So they put things into the assembly language, that are friendly for people writing compilers. But they don't put anything beyond that, because it's just, there's no one's ever going to attempt to do anything with it probably. So they address all real time stuff through dedicated peripherals, which communicate through probably memory mapped registers, which use some kind of libraries, which you know, are opaque to the user, as well as the hardware for that matter. And that's how real time is addressed. So the software never really runs that real time. It's all over the place, if you try to like take any, you know, modern ship with a pipeline and a cash. And you suppose you're making a square wave, and you look at it on a scope, it's jittery as I'll get out, because there's all kinds of stuff going on, that is great for making the program run as fast as possible. But it's completely not inclined to make anything, you know, low jitter, real time stable. So I wanted to make stuff that could do both. Your comment
about library abstractions actually gets me all the time, when I will start development on like an AFMA. Chip, which is Silicon Labs chip. And you'll like you'd load up their example stuff. And the, the main file has actually nothing in it. And it's all the other subject dot, right. And it's like, it's like, how does this work? And how can I use it in my project, and you end up like spending three or four hours digging in their, their library structure to find that stuff?
Yeah, yeah, it's like objects.do, everything right here. And who knows what it does. And there's almost a seems to me, it's an attitude commensurate with that, who cares what it does just type that. But then, if you can't really work from a ground level, and engage anything on a first principle basis, you're only going to be able to make, you know, stuff that is a product of the macros they offer you. It's kind of like trying to build a custom home and you can only shop it Home Depot or something. You know, or you're, you're limited in your pieces. And that's not to me, that's completely not fun. I'd rather have something I can get all the way down into it, understand what it does, and program it with exact intent and have it execute on that. Yeah,
that's really funny how you mentioned that because when I was looking to buy a house, you could definitely tell that which house was built or remodeled with the Home Depot package because they all use the same thing.
Well, the sad thing is that the China Gambit is that here's something for 1/10 the cost now it's 1/4 the quality, but you don't have any options. So meanwhile, all the quality manufacturers go out of business because they can't compete. People would rather pay 1/10 for a quarter of the quality than pay full price for full quality. And so we can have I have been through this just in the last couple of weeks getting my my parents house ready for sale. And we've had to go in and repair things. And it's like the stuff you get today at the store barely survives installation, whether it will work, once it's in use is a whole nother matter. But the hardware, the screws are don't oftentimes come when he got something that came cross threaded, I don't even know how that's possible and other things that were like all cut to the wrong size, you know, meeting up to glass that has fixed holes in it, it's like, how can this happen? But this is seems to be normal for just about everything these days.
Okay, so it's,
it's just, it just all represents to me, a giant frustrating waste of time that I'd rather not even begin.
So so that that whole mindset that you just described there is that what really drove the initial prop one?
Yeah, I wanted something that was going to be, you know, that I could program and, you know, know, for certain how many cycles each thing was going to take and then have instructions which make to the IO activity really closely. So that I could really, you know, write a few lines of code and get something to happen. It's kind of like an FPGA in a way where you can, you can pick what you want to have happen when, but without the trouble with the FPGA, the neat thing is you can do anything digital with it. The problem is, you'll die before you finish, you know, something complex, because it just takes a long time to work at such a tedious level. So I think, with the prop chip, the My idea is to give some kind of intermediate thing where you can have the quick turnaround a software, you know, we're in a split second, you can hit a key recompile download and see the thing run and work with it somewhat of a macro level through instructions. So you don't have, you know, the granularity the fine granularity you have with an FPGA, but you can work quickly enough and develop quickly enough and redefine your problem to suit a possible solution faster than you can maybe program the FPGA to do everything. And I've been working in Verilog Well, hardware description languages now since 98, and you can do anything but all your hair will grow gray and fall out by the time you achieve anything really huge.
So I guess on that note is like so what does it take to design semiconductors, then? It's a very broad question.
Well, it's it's been getting easier in some ways, but maybe more expensive. So in the the first ship we made was a completely full custom design. And the way that worked was we designed I prove everything out on an Altera FPGA, right. So I wrote a bunch of code and at that time, ah, do which was Altera is hardware description language, did a whole proof of concept on the FPGA got the ergonomics all worked out. So okay, I like this, this is good. Then I went and made a schematic. And then we had a layout engineer that took my schematic and drew all the polygons to realize all of the transistors and wires and resistors. And it has to PAC pass all the design rule checks, it has to match the schematic and then we built the first chip from that was kind of, you know, we're lucky that we didn't have more trouble than we did, I think we had to make the chip three times. But the trouble is, you know, when you're writing a little piece of software, you can try it out in a second. But when you're writing a chip, or you're making a chip, you spend maybe a year and then or a couple of years, and then you send it off to the foundry. And that's in the case of the prop one ship. That was like a $60,000 turnaround that took about three months, four months, sometimes depending on fab schedule. So
the fabrication part,
you have to get everything right. And there's a lot of room for error. So what's happened over time and chip design is, everything is about what's this term, it's called risk risk management, right? Because so much time and so much money is being invested, the outcome has to be assured, like with a 99% success rate, otherwise, it's too expensive, like so now, when we turn this chip around every time we make a design change, it's it's, well initially, we spent what 320 about Ken 320 K with on and the last change is about 82k. It's the sheer that's this year, right? And so what happens now is it used to be there were some all kinds of like, failure analysis techniques that you could use if your chip didn't work, like at one point, we had this one and a half million dollar electron beam prober which was a super cool it was like Star Trek. It was this machine that had a scanning electron microscope, and you could train the little vert Dual probe on the screen to a wire even through the glass passivation layer on the chip. And it was like a seven gigahertz non loading contactless oscilloscope that would inject like it would score it on average, like 50 electrons, or that is between five and six electrons at the target over this like a time spliced thing where it would repeat different offsets from a trigger that you'd give it. And it could construct waveforms on delicate bit lines and all this. So we bought that machine for 5000 bucks from AMD in Germany. And it cost like more than that little more than that to get it shipped out. And we spent about 3000, getting it up and running. And we use that thing for a while. And it enabled us to debug all of the memories in the proper one ship. Now, what's different today is all that cool technology, a lot of it has gone, it's not really under development anymore, because it's gotten so difficult to work on something once it's been fabricated because of its smallness and its density. That mean where they last left off on any kind of probing I heard about was they had this backside laser progress, you'd have to spend all this energy dealing with your sample your chip, grinding the back down, grinding it real thin, then selectively grinding a pocket with a focused ion beam machine to get to the bottom level like just underneath the bottom level that chip where the active components are, then you could probe it with this laser, but you only had about accumulative two seconds of probe time before you burn up your sample. And so So in these things were just getting it was getting more and more expensive to do anything. So what has happened now I see just from working it on is that everything now is geared towards, like pre determining that things are correct. And it's even to the point where if you get a chip back and it's not working, you don't try to probe it, you go back to the simulator, and you set up a simulation that's, you know, maybe more accurate than you had before. And you discover what your problem is. Because you know, touching like a seven nanometer chip, it's just, you can't really do much with that. And you can't always anticipate where your problems are going to be. So today, everything is about this risk management. So there are lots and lots of tools that are used in modern chip design, to you know, eliminate problems before they occur. And it begins with like really elaborate models for all of the devices on the chip, you know, a type of transistor built with oxide thickness and certain dope and send every corner in every corner of possible fabrication and dimension and voltage level, they have this thing characterized so well that you can simulate it without ever having to like build it and try it. And so your chip is a giant amalgamation of these little things. So with on, they have all these tools that check for just all kinds of things that you wouldn't really suppose like, not just that you've logically made the chip that you intended to make, in that it verifies against the schematic netlist, but also that
current is being delivered through low enough impedance wiring throughout the entire die. And it will kind of determine what if we have a hotspot over here and we have this signal propagating over here, the die might be relatively cool. And so they're measuring time down to fractions of a picosecond. Now, so every single path and your chip, every little logic transition from from flop to flop is measured in the tiniest increments of time accounting for wire, and what the attacks are going to be from adjacent wiring. And all this stuff is known ahead of time. So now it's just the whole game is different. And of course, it's gotten horrendously expensive. They say now for five nanometer process chip of moderate, well, let's say typical complexity, the designers are looking at an investment of $500 million, which is stratospheric and you could probably count on one hand, how many companies on Earth are in the market to do that, you know, there's gonna be Samsung, Apple, maybe a few others. But that's it. No one, no one has 500 million bucks for that for these things. Whereas it used to just cost maybe 50,000 To do a chip. It's just gotten stratospheric on the on the high density, you know, super performance and
yeah, at my first job, my boss, he was talking to me about getting some custom chips made. And we were just toying around with the idea and the saying at that time, and this was I guess 2009 He said, You want one custom chip. It's $100,000 you want 100,000 custom chips. It's $100,000 like just flat out that was the same. Yeah, the
upfront cost. Now I have a friend who was working at a pretty big company making now Work switching chips and I think they were at the 28 nanometer node and every time they wanted to buy a mask set because they had a huge die, it was like I think an inch by an inch. It was just gigantic. And it was like a $10 million expenditure just for the tooling to try it out.
Yeah, that's what the ask is. So with PCBs, you send like a Gerber package to them. Is it? Is there something similar since it's a bunch of masks? Are you just sending masks over to the chip? Oh, no,
it's like, it's something akin to Gerber. It's called GDS two. I don't remember what what that stands for. But there was GDS, now. There's GDS two. And all chip. geometry data is conveyed in GDS two format. And all this happens in the Linux in the Unix world. So it's all just line feed, no carriage return. And it's all in, you know, zips, tar balls and everything. What,
what process size? Do you guys use? What what size transistors are you using on the problem,
we'll say so the first chip, we used 350 nanometer, which was pretty affordable, a small company like us can afford to do that. And at that time, the mask set for a 180 nanometer process, which is what we're using now, just the mask set, nevermind the NRA, you'd incur getting the chip together, but the mask set was about $600,000. Our masks at at the time was I think was it 30k. But they charge us about 60 to run the whole chip, you know, with the with the fab run. So prices are way down. And I've heard, you know, an internal cost today for a 180 nanometer mask set is about $35,000. So this stuff comes down a lot. But when you get to the leading edge processes like 14 nanometer, you're in the several millions of dollars.
That makes sense. So So what makes the new or I guess what makes the propeller different from normal microcontrollers?
Okay, so the propeller was designed to have because as I've programmed all my life, you're always fighting this issue that you've you always have a single thread arc or single thread architecture, you have one line of execution, right? So you have to divvy it up in time. So I thought, man, it would be great if we could do multiple things concurrently without hiccuping. Anything else. So, so the prop one had eight processors in it, right? But the, the secret sauce is to hook them together in a way where they can share a memory easily. So you can have symbolically named variables that every processor can have access to, without any time penalty based on whatever anyone else is up to. And so that's been our methodology all along. And I don't really I haven't really looked at what, you know, these other multi core chips are about that are out there now, but I kind of suspect that they're probably some kind of ad hoc mixture of things that have been extant before, that were tied together with some kind of bus, you know, some kind of system to share some memory. But the prompt was designed to be able to do that without any kind of exceptional event going on, you know, it's just part of the architecture. So you can write code, let's say you have a system where you've got to handle some user interface, and you've got some calm data stream, you have to mind and then there's some motor control, we'll try to do that. And one controller you can see would be impossible, right, you're not going to be able to do everything in a timely way. But if you can write separate programs for what are separate processors, then you can simplify your software effort by quite a bit. So you can make one thing that just handles the calm, the calm stuff, and then, you know, lays out into memory in some variable, a status, and then what packets it's received and what the indices to those are. And then you can have the user interface, maybe that's the top level thing, it can be handling what's going on with the user. And then the motor control stuff can be its own thing. And you might even have some other program that's coordinating all those things. And so you only have to write code for what you want to do in isolation. So it really simplifies because at the end of the day, you know, we're all going to die, we're not going to live forever, we don't have time to get to do everything the most the hardest way so it's nice to be able to cut things ended, like you know where to cut the pie is always the problem in designing anything anyway, right? So try to make it so that the pie can be cut. You can you can design it this way from the outset so that your efforts minimized and your returns maximized.
So So what kind of how's the that RAM or the memory structure work? Is it like, because it has eight cores? Is it like an eight port RAM structure?
Well, sort of but in time, so there imagine that it's like a distributor cap on a VA right? The contact your spins around and it goes it goes it services each processor in turn. So there's like a processor zero we call them cogs cogs zero, what do you want to do read or write in the cog might be there waiting within an instruction, you know, with write or a request to read. And then so the hub, that's the center takes that command does something with the memory. And then on the next clock, he's asking the next processor, what do you want to do. And then, you know, two clocks later, he returns back to processor zero what he had ordered if he was reading, and so it kind of goes in a circle. So it's kind of like an eight port, but in time not to make a physical eight port memory would be too huge. But if you multiplex it in time, you can do that. But see, that works. Okay, when you're sharing processes, but a processor needs to be married to its own local memory more closely than that. So the processes all have their own local memories, which are full speed that only it talks to. And so that's what executes code from mainly although on the new chip, we can execute code from the, from the hub memory as well.
So let's talk about the new new the new prop, is it just prop two, or is that have an official name.
Now that's it, we just call it prop two. And so it's kind of like the prop one, but it has a lot more memory because it's built in the denser process. And we've kind of abstracted the idea of the, the, like peripherals that are made into each processor. So each processor does have some peripherals associated with it like a streamer that can read and write through the main memory in and out of the pins. That's useful for doing video stuff. And it can grab stuff and send it to DAX, like every clock, it can read or write a whole 32 bits from the pins or to and from the main memory. And it's it works a little bit its memory works a little bit differently. And I can explain that. But it's, it's faster, it's got more memory, and I was saying about the on chip peripherals. So we had a counter, every cog had two counters in the original prop one, but we don't really have counters anymore. So what we did is we put a whole bunch of smarts into the IO pins themselves. So each IO pin has like, I don't know, maybe 20 different modes where it can perform. Because the pins themselves are analog, they can do DAX, and ADCs, and digital IO, which which Schmitt trigger, and all kinds of level sensing. So we have some, like logic smarts that are tied to each pin, which will allow each pin to be its own serial port or pulse width modulator, switch mode power supply controller or analog to digital converter, or oversampling. digital to analog converter. So we can, you know, try to push 16 bit quality from an eight bit DAC. So when these things are kind of set and forget the process, any of the processors can send those things that command, and then it'll just the panel, just keep doing it until you give it some other instruction. There's also USB two,
can any PIN be USB? Or is that just
no see, this is okay, this is another thing from my prior experience, that thing I didn't like because I didn't like this the single threaded execution because that was always a limiter. And then giving pin certain personalities was always a pain too. And that was a nice thing about the FPGA, a pin is a pin because it's only digital anyway, right? But anyway, every pin on the propeller chips is like any other pin. They all have the same capability. So you could design a circuit board, and simply wire pins to where things need to go. And the only penalty you might have is if you wanted to output eight bits at a time. But you've got those pins strewn all over the place. That's gonna take a little more software to affect right. But if you want eight contiguous pins, we'll just use eight contiguous pins, and then the softer side becomes easy again.
Yeah, and that actually would help between firmware and layout designers. You always get this fight between like, if your code is easier to write because like you're incrementing loop cycles fans, but you go to the Layout and layout engineer goes, Well, those are like an eight different spots all over the microcontroller.
Who wins? I don't know.
But chip, the software defined peripherals. These are something you've been working on since the basic stamp days.
Okay. Yeah. So Right. Well, I've always kind of liked to be able to write what are hardware peripherals in software because you have a lot of flexibility then right you can you can make it do whatever you want. You can't make it necessarily do anything on any given cycle or every cycle but you can some you can often redefine what you Problem is, so that it can be fulfilled by a possible solution you can come up with in software that's not complex. So for a long time, we've been making little modules that can run on the propeller, one ship called up, we call them objects. Some people say it's kind of a misnomer, because we don't have inheritance and polymorphism. And all this business, but it's like a little module that you can instantiate on any processor, and that processor just runs it. And now we have pins that can, you know, take on jobs of their own to and just run in the background. And so we try to put into hardware, what we absolutely don't have the bandwidth to do in software. And then beyond that, we have the software, the assembly language fast and efficient and rich enough to be able to do a lot of stuff like CRC computations on the fly, and these kinds of things, so that you have the ability to, by writing a little software to talk to a hardware, you can make very what looks like pure hardware, things happen. And then at the higher level, we have, you know, a language, which allows you to just assemble these modules or objects together to build, you know, whatever you want out of parts that exist. And when it's very easy, you don't have to worry about conflicts or anything, these things all live in separate processors are in separate bins. So they just work you can you can add anything in as long as it fits, without ever worrying about anything hiccupping. Anything else.
So this sounds incredible, for a real lack of other words of words. I mean, if you look at a modern microcontroller, datasheet, and you look at the I don't know, whichever page shows all their pin definitions, every pin nowadays has 15 different functions. But most of the time, you don't get to pick where you want all those functions to go, it sounds like on a prop to it's just pick a pin, tell it what to do. And yeah, there you go. And that's, that's sounds absolutely fantastic. So are you guys the first to really do this? And do you have a patent?
It's no, we don't, you know, it's something that anybody could do. But you know, prevailing, the prevailing mindset just keeps carrying forward and it kind of, you know, we'll try to maybe try to attach like, Oh, we got multiple cores now. And we've hobbled them together in some fashion. But I think, you know, when I was a kid, and I started learning about all this, I had, like a very different vision of how things were going to turn out than they did. I mean, now, anything of sufficient complexity, just spies on us, right? And betrays us, we don't even know what it's up to. But my thought was that computers would be useful, they wouldn't just be machines that, you know, people would basically watch, you know, some crummy TV over and then, you know, every bad thing people might might want to do, they can do it over their little, little phones now. So I always thought of computers being helpful and useful. So my intent was to kind of make stuff to that. And but wait, I've already forgotten I've gotten off track or what was your question? Because I was trying to answer it. Like I talked too long.
My question was, where are you guys the first to have this, I guess, infinitely usable pin?
I don't know that we are. And it's something that, like I said, anybody can do. But I think just the way things march forward, there's kind of a, I mean, what defines the world is, has for a long time is C. And so a processor has to execute C and then uses peripherals to do real time stuff. So everything kind of falls under that methodology. So I've when I was trying to get as I kind of liked the idea of going back to square one, like what's actually possible using transistors and memories and, and pins and whatnot code, and what can be made that's most amenable to how we want to think and would like to be able to do stuff. So I think now things are so far down the one way things have gone for so long, that it's actually like retro, flexibly limiting people's imagination, because they only imagine stuff that they can picture how to design out of stuff that already exists, right? They're familiar with. But I'm thinking that there's got to be like, you could go way back to 19, to the 60s and start from there again, and kind of move in a different direction, which would make computers a lot happier, things than they are today, especially in my case, microcontrollers. You know, I mean, I don't really I'm not really that interested that jump into some controller that has a 2000 page manual, and complex things and then relying on libraries that I'll never understand or you know, they're shifting like sand under my feet. That kind of thing just turns me off. I really liked the idea of being able to just work from a very bottom level. You Know where what are electrons going to do in this case, and be able to handle things at that level without always sucking in huge protocols that were many, many decisions have already been made for you. And you're basically just raising your hands like, Oh, me too. Me too. I can do that.
You sound like a true engineers engineer. Maybe so. So you the the prop, you always had the academic language, I guess you could say spin available for programming it right is the prop to going to be able to utilize that also.
Yeah, I'm working on the next spin compiler right now. And it's going to be it's much larger memory model, the chip has, you know, a one megabyte memory space, the prop two chip has 512 k bytes implemented. And it's Oh, we also built this thing into the chip. So that we can selectively skip instruction. So if you think about making an interpreter, right, you have many things which have like, identical setup, and take down code with something different in the middle, like, if you want to add two things together, right, you might have to, you know, pop something off the stack, add it, maybe pop to things, in theory, do some operation, push them back on the stack, even though you might kind of virtualize that stack somewhat in registers to save cycle times. So we made this thing that allows you to very efficiently just like look up along, meaning a 32 bit word automatically from memory, or pick a bytecode out of the main memory from the from the stream, or FIFO, which is two clocks, never more than that. And then within a six clock span, convert that into a jumper dress and a selective skip pattern. So that only instructions which are not skipped, execute and take time. So it may be it's a little hard to explain this, but what it allows you to do, if you've ever written code, and you see that, gosh, I got all these different snippets, and they've got a lot of commonalities. But I could put calls everywhere to what's repetitive. But imagine if you could just meld all those things together. And then with some table table data, which gets picked up automatically, only the instructions you want in that sequence get executed. Does that make sense? Yeah, sure. Okay, so what it means is you can you can develop, like bytecode interpreters in this case that are very cycle efficient, that can pack, you know, that can run exclusively out of the out of the local memory of the processor. And so this could be used for like, you know, any any kind of virtual machine. And so that's how the next spin is working. So even at the same clock rate, let's say that we just compared apples to apples and slowed the clock rate down and even said that, okay, the prop one we're selling now takes four clocks per instruction, the new ones gonna take two. So let's just say all those things are equal, right? We're probably about 15 to 20 times faster with this bytecode helper hardware in the processors than we then we were in prop one. So then you got to think, Okay, if we're, let's say, we're 15 times right, then double that, because instructions run twice as fast. Now we're at 30. Now, instead of going 80 megahertz, we can go? Well, we have customers now that are running the current silicon at 360. So what would that be 240 times well, no 120, maybe 120 times faster. But that's kind of overclocking, but even staying at, say, 180 megahertz, we're probably 50 times faster on spin, you know, then we were on prop one for the new chip.
That chip should throw in there that we have a few micro Python ports underway as well.
Yes, we have a few guys who are one, one guy has actually taken a micro Python, I guess, runtime file that was compiled for a risk five architecture. And he's made a just in time, like, assembly language translator in the prop to that, that runs this risk five image, which is a pretty inefficient way to do anything, but he did it because it helps them realize the goal with minimal effort. And it's kind of a proof of concept. So we have some other guys that are working on more of a native approach where they would actually, you know, program, the chip and its native assembly language. And then they would have I would think, at least 100 times the performance may be more of this just in time, you know, cross compiler.
So it sounds like for prop two, we'll have micro Python we'll have C spin and assembly. Is there any other languages that you're all looking to support?
Yeah, initially, that's it. I mean, so normally what happens is triple spend a lot of time and others on, on our development team making all the really good examples. And then that'll spur other languages and higher level stuff that people like you and I could use, you know, but I mean, ultimately, I'm sure there'll be a graphical language to something like another blog, or it's like flow
code or something like that. Blockly
Yeah, and right now you can program propeller one in multi core mode with Blockly. And do impressive projects. So that's been really neat for me, and a lot of customers. But primarily spin for commercial users will be the most common language, believe it or not, and, and then, for, for hobbyist makers, education will be the Python,
I'll actually use say, as spin is was the second language I learned. I learned assembly and then spin. So that's my history there.
Oh, that's cool. Wow.
So on the on feature sets for the prop two, is there a because I use the prop one a lot? Is there a debugger in prop two?
Oh, yeah, actually, we put into the hardware, a whole breakpoint debugging system. So you can single there's there's modes in there where you can single step, you can do an address breakpoint, or a break on interrupt or on any of the three interrupts sources, and then also an asynchronous breakpoint from another cog.
So is that going to be like, do we have to have a like, with most microcontrollers, you have to have a programmer or a debug module? Like hardware? Is there gonna be something like that for this chip? Or is it over USB, or how's that work,
it should just it should just work, it could work over the serial connection that you download from, okay, it's just a matter of software development. But in once that debug mode is set up in a cog, it cannot be detected nor defeated by the code running in the cog. How's that work? It hit what we do is when a debug interrupt occurs, which is not maskable, we shift in some other slight small amount of memory into the cog address space, and use that as a buffer to move things out to a predetermined buffer and hub RAM. And then we can and then we can, you know, run small amounts of code, do inspect all the registers, look at the pins, and then zip things back up and return like nothing happened. Now, the thing will note that some time disappeared if it's paying attention, right? And if it's relying on a smart pin to respond in the next 10 clocks, and the debug interrupt was like 200 clocks, then you're gonna miss that. So it's not, you know, we'd have to have like a super all states aware system alternatively, but for what this thing cost it was it was effective enough for a lot of stuff.
So just out of random curiosity, going back just a second on the new version of spin, is it going to be all super colorful? Like the last one?
I suppose. So. Are you not liking the color? Are
you are you talking about like the different colors between like the constants variable section? Okay, yeah,
well, actually, so it was interesting. I wasn't even aware of weld, I shouldn't say I was I knew of the propeller before I met Parker, but I had never actually even touched one. And then I joined up as an engineer at macro fab. And for the first two years, Parker was like, well, the propeller does everything. So like, I did my first project with Parker looking over my shoulder. And I'm like, What is this language? Like, everything's so super colorful. So I was just curious, like, he kind of seems to be your fingerprint in a way, cogs and colors, right?
I guess. So. Yeah. I mean, we tried to make the whole idea of Spanish to make, there's some things that I really hated when I had to get over, you know, above assembly language and work in like, Pascal is that this typing business drives me nuts. And I understand why things get typed. But really, your hands get tied so badly, that stuff that you just know, you need to do becomes like, so difficult, you got to find the right type cast, get that thing on itched. And it's just so much trouble. So we have like kind of a typeless language with a default size of 32 bits, you know, and that's the idea. And then, you know, any kind of loop can be expressed with like, in, we made this keyword repeat. So the whole goal of the language was to make something that was like terse, so there's not a whole lot that you have to learn in order to be able to use it, but also powerful and that it wouldn't tie your hands behind your back and cripple you with all kinds of inane stuff that, you know, so you can be like a preschooler in a in a safety net, but you can't actually get anything done. That's what I feel like with a lot of these high level systems. So spin is, you know, you gotta like, you gotta wear the pants, but easy time with things So
elastic waistband pants
that's why I always like spin or at least these prop one is I saving just said is you I could do anything with it. You could it's that software defined peripheral idea is I need to make this serial spy bus thing that has some funky timing and stuff. I can do that with that. I don't have to go hunt a 2000 page data sheet. To find that one register, I need to click to like, make it N, like nine and one cereal,
or something like that. Yeah, I know what you mean. Yeah. Yeah. Yeah, that kind of stuff. I mean, it's better, I think it's better to have freedom to kind of set things up the way you want than it is to have to go through some big arbitrary construct that someone else put together that maybe it wasn't, they weren't really aware of even how it was going to be used. So they, you know, it was designed from kind of a wrong perspective to begin with, now you're stuck with it, and there's nothing you can do about it.
So I got a question on this look, go lower back to chip design, is testing and validation? Is that something that y'all have to do with chip design? Because I know like if you build a hardware product, you have to get FCC CE certified, you have to make sure you're not emitting radiation, or? Well, I guess it's electromagnetic radiation. ESD, stuff like
that. Yeah, we really the only thing is ESD. So any kind of FCC testing would be the responsibility if whoever designed it into the product that it's in, right, because this is just a component level thing. But we do have to design and then validate that it can withstand, you know, 2k, or 4k, human body model shocks. And that's about it. But there's a lot more stuff I've been really impressed with on semi who's done, who's going to be the FAB, and also did the whole digital design for this. They're so comprehensive in their methodology that they check for, like everything that you hear, like, oh, yeah, that could be a problem. Well, they've got some app that they run that checks for whatever it is, that's of concern. And you know, the tools that they use to do this, if you wanted to set up one engineer with all this stuff, it would probably cost $2 million a year, just for the software leases. And but on, you know, they ran a big foundry business, they have a few design centers, so they can absorb those kinds of costs and make it work. But they, they achieved quality today, because so many problems have been encountered in the past and identified and tools have been developed to assure that those things don't exist in your design at hand. And so they they use a lot of those. So the process is very methodical, it's really not what they do is really not nearly a creative, so much a creative process at all, it's pretty much a rote checklist process. And by the time they get down their checklist, you actually have a pretty high quality part, because I could give them my design files and they could make a good ship or a bad ship, you know, one that one that is flaky or not. But the way it turns out with their methodology is it's super solid. So like in this case, now with with their prop two, we figured initially we'd have about a 2.4 watt power dissipation max on the package. So we picked a package which dissipates the heat really well through a big bottom thermal pad. And that goes down to a via stack and then a heat spreader on the bottom side of the circuit board. Now you only need to do this if you're going to be running the thing at high power, right, you can always run it lower clock frequencies or whatever. But anyway, so they determined okay, we want to we're going to our goal was at fi minus 55, seed 85 C, then they figured okay, well at at the amount of power, we're dissipating, and we have a TJ on this package of 20 degrees C per watt. And we want to have a 20 degrees C overhead allowance on for hot spots on the die that don't even get out to the package. Right? So they wind up figuring that okay, we need to have this thing passing all of its timing and all of his tests at 150 degrees C junction temperature on the top end, which is extreme I don't know if anybody will ever get there. Right but it's but it's designed to run it 180 Or a second turn 175 megahertz we had to slow it down just a little bit to get everything to fit right. So 175 megahertz at you know 1.8 volts minus 5% Worst process conditions 150 C junction temperature, it will go at 175 megahertz and and check this out. This is a really cool thing. You know, when you design something, you start to crank up the clock. And at some point something fails, right? Oh, yeah. You might notice like memory misses or something or some peripherals not working right, or your code started not functioning, right? Well, this the design methodology that really everyone uses these days, where they're tracking picoseconds of every path, you know, subpicosecond timings for the wires, the buffers, the logic gates, the setups on the flops, the outputs, the queue delays, clock to queue delays, all these things are so carefully done that imagine you've got in our case, in this latest chip, we have 830,000 instances of cells in the in the logic thing in the logic pool, right? And
what was I gonna say, Hold on here lost my train of thought. So what happens is, in order to get timing that you want to push this thing to the limit, well, you can't just tell the tools go as fast as you can, because it'll, it'll, it'll never end trying to optimize stuff until it says, Okay, I found something I cannot push. So you have to give it a realistic timing goal, right? And what it does, imagine you've got all these cells with all these wires, and all these buffers needed to interconnect them. And some things really need to be close together. But stuff that's really lacks on timing requirement can be spread further out to allow other cells to congregate closer together, and shorten their wire lengths and eliminate buffering, and all kinds of stuff that would have been needed to drive longer wires. So what happens is, when you get a chip back from a process like this, and you start cranking up the frequency, you don't see any sign that anything is wrong until the whole thing goes kaput, because they optimized up against a wall. So there are 10s of 1000s of pads that are at the timing goal, right on the picosecond. You see, it's not like there's something that was sticking out that was going to fail early, when the thing fails. 1000s 10s of 1000s of pads fail simultaneously. So it's nice to have that because you know how far you can overclock it. It's not like there's anything mysterious that, you know, is hiding or lurking when it fails due to frequency. It fails systemically.
Yeah, it's not like overclocking a regular PC, because you got to test it. And you will get weird. A lot of times you get memory issues, misses and stuff, but like sometimes it could just be like the southbridge bus goes, I was overclocking, right, when when computers had South bridges. So
yeah, it's the the reason that is is because the southbridge and the memory are not part of the chip disease. Right. So the chip design methodology ensures that chip will keep working past the failure point of the externally connected things most likely, usually, that's why you're seeing the external stuff fail, but the chips probably, if the chip were to fail, you'd see like you just see it flatline all of a sudden, yep.
And we think that PCB design is hard. Like, this stuff sounds incredible.
This is it's all computer driven. I mean, no human can touch these modern layouts, there's no point. So the way the entire chip is built, is they, they honed the scripts, which directs the tools, right, so So months are spent setting up the scripts, which drive the tools to get the desired outcome. So if they notice there's some characteristic problem that's occurring, they'll write a script to address that not on an not on a node basis, right. And it has nothing to do with like sell names, or flip flop names or anything, but just a general rule, which will then be applied to the whole design, and the compiler will suck that in and make it part of its criteria for doing everything. And then it's hive mind of scripts. Yes. Yeah. But see, all this was born of the problem that it is so expensive to build modern chips that if this can be if these if failures can be eliminated, beforehand, it's worth a lot. And it kind of that's the end. That's the way the industry now works.
Sure, sure. So I'm interested we've certainly heard a good bit of chips thought on the prop two, Ken, I'd love to hear some some stuff from you on, on what you think of the prop two.
You know, truthfully, I for it's been a 13 year process. And so it's amazing watching chip do this and learning as he goes to I mean, he has the ability to load this whole thing into his brain and see the pieces work. And I think he's learned a lot using the tools this time. You know, we've restarted the process several times along the way over this period, through learning with different teams and different layout approaches. And it wasn't until recently that it all really came together. are. So you know, I'm too busy really running the business at the moment because, for me, it's been a mostly a financial, financial endeavor to get here. And that's been my job is to support chip to get the funding in place and to run the business in a way that we could do this and do something big. So, yeah, I've, I'm still learning the P one. And I haven't used it up entirely. I do simple things with it, but I have a lot of fun. And with the P two, it will likely carry my microcontroller learning experience, till I'm seven years old, to be honest, and it's gonna take a while for it to become easy for me to use. So I'm super excited. I mean, I, it's, I can't wait at this point. To see this get done. I mean, we're full board parallax right now, teaching teachers, but this next step is huge. I've been Wait, really waiting to be part of it.
So when can people get their hands on a prompt to?
You knew that question was coming eventually.
So okay, so we have some initial, like, first run prototypes that we have now about 110 customers with these things on boards. And they're busy, you can see them every day, they're posting things on the forum, as they play with these things, and develop tools for them. But we had some problems with the initial silicon, we had a timing glitch, there was a race condition in the logic were causing, like trying to drive an output pin to float would actually sink it halfway low before the float signal got there. So that's we needed to fix that. So that's been fixed. We also had some sign extension problems from differences stemming from the Verilog I was using for the FPGA and the hardcore Verilog that they use for the ASIC design. Mine was more liberal with its inferences about what is signed and what's not. So we had some circuits that just weren't doing the sign extension. And therefore, you know, some blocks like our colorspace converter just didn't work. Our smart pin mode that did the quadrature encoding didn't work. And there was another minor thing. But anyway, that's been fixed. And that's been fixed. And then during that time, I added a whole bunch of stuff, we did a lot of research when we got that silicon back on the ADC and how it was working. So we put in a whole bunch of enhanced ADC stuff now into the smart pin. So we can do sync to and sync three conversions, which are a way to get a higher effective number of bits per your sample periods. And the chips grown a lot but they just just today, Wendy, who's the our Lead Engineer at on semi who's running this whole process, she was going to send me the stuff to sign off on the tape out. So they'd send it to fab. But she didn't get done with it today, because I didn't hear from her. But I'll probably hear from her tomorrow, but they're anxious to get this done. And once that happens, it's going to spend, what did they say? Can how many weeks it's longer than it was
Yeah, and we ordered 1000 Extra this time. So hopefully it works, there shouldn't be any surprises, because, you know, we just in the last couple of days, she simulated actually downloading a program into the chip, that doesn't exist yet. And then, you know, having a conversation with it, seeing it run applications that were downloaded. And that's all working. Okay. So when we get the next chip back, you know, hopefully there's no problems at all. We've got some facelock loops, some timing, source improvement, a lot of logic enhancements and the bug fixes. And we'll be able to build a whole bunch more of these, these evaluation boards, and then get those out. And then meanwhile, I'm working on the spin to interpreter and that should be done. I mean, not the interpreter. I've got the interpreter down, but the compiler for so the whole spin thing should be running by the time that chips come out. So when July will have interesting stuff.
Very cool. I can think of two podcast hosts that would be happy to test them out for you.
All right. So we'll send that. Remember again. Yeah, the
so you mentioned your forums, is that where your community lies?
Pretty much. Yeah, there's not anything else that I'm aware of. And it's just a handful of people. There are about 25 regulars that are on there, almost 24/7 and other people, you know, drop in and out. But one guy has made a fourth interpreter which is actually in the ROM so that when you start up the chip, you don't actually need any kind of development software for it. You can have a conversation with it through a terminal and you can kick off its fourth interpreter and do all kinds of stuff and he's got his fourth augmented now so he's, he's playing well. A whole video movies on the chip using an SD card. And he's got a little terminal program that he can have a chat with it on Google and I'm really looking forward to being able to do a lot of signal processing stuff. I really like audio a lot. And this chip has in it a codec resolver, which can do all the transcendentals. I can do sine cosine, complex arctangent, log exponent, everything for music,
married even will be interested in that.
Yep. Yep, that sounds great. And just eat this may be way too premature. But for a single chip in the future, what, what kind of price point would we be looking at?
Okay, I would think probably around. Our costs are approaching five bucks. So I would think $10 or so. And we've got a lot to recoup, we've got 13 years sunk in this. And I think for volumes that could get lower, but probably for low quantities. What do you think can 10 to 12? bucks?
Something in there? Yep. Sounds good. I never known it doesn't really matter. I mean, no. Would you recover your ROI? We'd have to price them each at $100,000. If we want to get our money back?
Oh, sure. Sure. Yeah. Yeah, then we wouldn't sell
any of them. Right. Right. No, but really, what this thing is about is it's i The whole point is it's going to be really fun to work with, you know, and stuff I see just becoming increasingly unfun over time, more complexity, more, you know, lack lock, lack of knowledge about how anything can work and loss of control over things. This is something that kind of respects the programmer because it lets them do what he wants. And there's a rich set of stuff in the chip to be able to do really fun things with like, all those core tech things I mentioned. And so it's really an investment. You know, people might say, well, 10 bucks, forget that I can get this arm over here for for 50 cents. But the thing is, you know, a lot of your quality of life is the experience and how much fun you have working on stuff. So and really in America, how many units do inventors make of anything? Maybe a couple 100? A couple 1000? You know, so what is their time worth? And what is the, you know, what's their peace of mind and enjoyment factor worth? It's actually worth a lot. So you could get this chip and have a whole lifetime of fun with it for 1210 or 12 bucks if that's what you want to do. Or you could, you know, use it to design a product, which would have, you know, a higher ticket cost in the end, but you might get there 10 times sooner.
I think most of the applications are in like the 10 to 1000 unit range too. Sure. Yeah.
Yeah, we actually designed a Pinball Controller based off the parallax propeller. It did our audio video. What was this one? Yep, then hack?
Yep. Oh, yeah. Awesome project was that Roy
Eltham doing did are involved in
Roy did our audio assembly. And I actually just grabbed that in my my drawer of dev boards. And I have my original parallax propeller demo. And I felt when I was like 19 years old. Wow. Well, how
old are you now? 30. Wow. So that was 11 years ago?
Somewhere around there. 2008 ish.
Yeah. So we were two years in the making prop two at that point.
Time goes by quickly, doesn't it?
So, um, what's your favorite story about the parallax adventure? Oh,
Ken, what do you say?
Gosh, I don't know. There are a few things that really stand out. Some of them are too colorful to talk about here. But one of the times
we do say a lot of things on this podcast.
Yeah, I mean, this is a safe story. It was chip is never on time for anything like propeller two or getting to any place. But uh, once when P one came out, we had to go to Europe and meet all of our distributors, and to do a presentation and we had 21 of them travel to Amsterdam, and chip and I decided to travel together. And we just had one disaster after another trying to get to SFO minute we got there. They close the gate on us. And this was just an absolute hassle. $10,000 later, we had two tickets. We walked in minutes before this whole thing started and he was on the spot. It was rough. But it was funny wasn't a chair. I
forgotten about that. Yeah.
That's when you're raised from your memory. Right?
Well, my main memory is that when we were in Utrecht Hall, and we got off the out of the airport onto the train, and it was we weren't sure where to get off. We were asking people for any information and nobody would talk to us. It was just the most bizarre thing. And finally, some girl was getting off the train and she told us We needed to know. And then she stepped off the train, but like they were very allergic to us. I couldn't figure that out. I mean, in America, people would talk to you. But over there, I don't know, maybe they're just very leery of people or something. But it was kind of bizarre, I would have thought that Dutch would have been more friendly than that.
So where can people get involved with parallax?
I just go to our website. Can I tell you one other story? Yeah. Okay, this isn't really a story so much it is, it's kind of something that's happened a lot, which I really liked. So I worked on this prop one ship, right, because I really loved the idea of making something that was going to be fun and powerful. And so we had a lot of a lot of feedback from customers, you know, over the years that they really enjoyed it. And it kind of got them, some of them that got them back into electronics, they had been on a 20 year hiatus, and they somehow came in contact with the prop ship, and they started playing with it, and they really enjoyed it. So that is really meaningful to me, because that is that was my intent, you know, sort of like a pheromone was sent out into the atmosphere, and certain people out there, pick it up and resonate with it. You know, some just may ever be oblivious or not like it for whatever reason, but there are some people that totally got the idea like, like, sounds like you were you were enjoying it.
Oh, yeah. I'm like, on like the parallax pillar a lot,
you know, to make it out to since we're so involved with students now i And we tracked them for so many years with so many kids I've met at science fairs around the country that come up to me, you know, like 910 years old, and I give them a kit. And now they're engineers. And I see how that the whole sharing with them, gives them a place to go something they're interested in exposure to something really fun. And it does create careers. Yes, we see a lot of that all the time. I mean, these kids will come up to us, you know, full grown engineers now and say I met you in 2002 with or whatever.
Yeah, yeah, that's good. We're gonna, there's so much growth to be had and fun experience, you know, realizing ideas, you just got to have something that permits you to do that and gets out of your way and gives you some capability. So that's kind of what I like about this sort of work. And when people find that, that's totally like that, that we hit the bullseye. That was the whole point. But you know, today what kind of concerns me is, like the way that everyone has their smartphone and everything and they're all their attention is so sucked up in these things that I was reading the other day that of the big social media companies like Facebook and Google, they have they realized that the they have saturated people's time, there's no more time for people to look at screens in a day. And you know who their biggest competitor is? Is that fortnight? No fortnight? Oh, no, no. So So I My biggest fear is that we finished this prop to chip, it's really cool. But people don't have the attention spans to get into it. That would be sorry,
propeller, propeller Royale, that's what it is. 100
It'd be like the top three is going to be, you know, people looking at Facebook, fortnight and then parallax propeller.
There, maybe. I mean, it takes a little investment to get into something like this. But once you're on the road, oh, man, it's like a whole universe. You know, it's like a big horizon in front of you. But I just hope people people's attention spans haven't been shortened to the point where they won't be able to enjoy it.
Well, people right now have to dig through 2000 Page data sheets to find what they need. So maybe they are still long enough? Yes.
Hopefully. Yeah, the document that fully described well almost fully describes, it doesn't get into the details of the pins. But that wouldn't take much more. It's a Google Doc, it's only 75 pages. And it completely outlines the whole architecture down to how you operate it, for the propeller to chip. And people have used this to build everything that's been built. So it's really not that complex. And again, it's designed to like be amenable to your brain, you know, so you're not being asked to understand bizarre things, but things that are congruent and make sense.
I think when I started with the parallax propeller, there was a single page PDF that has all the instructions for assembly and all the spin stuff. Oh, yeah, I think it was only one page long. And it's like everything you need to program it.
I think we had like 65 or 69 instructions back then. Now we have we're pushing like 400 Oh, for spin. No for the assembly language, boy. But there's a lot of things that do a lot of cool stuff that would otherwise take lots of separate instructions.
So I know we're going way back into the weeds but so those extra instructions. Are those still top level? Or I guess bottom level instructions where like they have a hardware thing? It does, yes.
Okay. Yes, yes, yeah, we have things that can take pixel data like, you know, four eight bit fields and multiply the bytes together or add the bytes together with saturation, you know, the two clocks. That That one actually takes, I think, seven clock cycles, because I didn't want to build all those multipliers in parallel, because it would have grown the silicon too much. So I, I kind of multiplex them in time we do. Like it's two clocks times four, but then we get one cycle for free or something. I think it takes seven clocks to run that instruction. But it's doing for eight bit multiplies in sequence.
So Ken and chip, where can people get involved with parallax?
Oh, so the forums are big with this. Okay. forums.parallax.com is one spot and then of course, the usual social media work, come see us where you're
looking at it at
Rocklin, California. All right, cool.
And can they can people just show up? Or do they have to give prior notice?
It helps, but you can just show off. Party.
D Wait, you're gonna have like 100 people next week to show?
Well, okay, since you mentioned it, when the propeller one was early release, we had a lot of expos. We had a lot of big events around the country. We will be having a propeller Expo in Rocklin. And we'll invite everybody we will expect, you know, several 100 People will have tents set up and presentations from early adopters. And we weren't going to do it here. April, May. But we had some problems with the dye. And we're going back and so maybe we'll be able to do this in the fall. Everybody's invited.
Could we come and do a podcast then?
Live? Yeah, that'd be great.
That would be a lot of fun.
I will see what we can do. And yeah,
your friends will be here too. Oh, yeah. And Joe sounds
like we need to make this happen.
Yeah, I think so too. So with that, do y'all want to sign us out of the podcast?
Okay, can you want to do it this time? Okay, so that was the macro fab engineering podcast. We are your guest chip Gracie and
And we are your hosts Parker Dolman
and Steven Craig. Let everyone take it easy
Thank you, yes, you our listener for downloading our show. If you have a cool idea project topic or cool semiconductor story. Let Stephen and I know Tweet us at Mac fab at Longhorn engineer or at analog EMG or email us at podcast at Mac fab.com. Also check out our Slack channel. If you're not subscribed to the podcast yet, click that subscribe button. That way you get the latest episode right when it releases and please review us wherever you listen as the helps the show stay visible and helps new listeners find us
Chip and component shortages continue! This week's episode covers Ford and GM automotive supply chain problems and EMMC wear chips for Tesla cars.