Nice Architectures to work with

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
User avatar
xyjamepa
Member
Member
Posts: 397
Joined: Fri Sep 29, 2006 8:59 am

Post by xyjamepa »

@Dex:
Why would you go with ARM?
and what's used for?

Thanx.
The man who follows the crowd will usually get no further than the crowd.
The man who walks alone is likely to find himself in places
no one has ever been before.
User avatar
Zacariaz
Member
Member
Posts: 1069
Joined: Tue May 22, 2007 2:36 pm
Contact:

Post by Zacariaz »

Since i first started to investigate the ARM architecture i have been very much in love with it. It seems to be everything i have ever wanted from an architecture. Simplistic, low power consumption/heat, yet powerfull. However there is one problem, which may not be a problem at all, but i have trouble regarding which ARM processors, if any, includes a proper FPU. Floating point calculations without one is something that will be very complicated i think.

I also have have yet to find a osdev tutorial for the ARM architecture. Im sure its out there, but i haven't found anything of interest. Someone, maybe Dex? promised that he would do some work on a tutorial, and while i know that it is something that can't be done overnight, i havent heard anything about it since.

Anyway, ARM rules.
This was supposed to be a cool signature...
User avatar
Dex
Member
Member
Posts: 1444
Joined: Fri Jan 27, 2006 12:00 am
Contact:

Post by Dex »

@abuashraf, Most new stuff is ARM base, from your router, to your Nintendo DS or your i-phone or mobil phone, or tv settop box.

Its all Zacariaz pointed out and more, but the big plus is you will find it easy to get a job, even if your OS is not taken up.
Its also easy to code a OS for, example in 90% of arm chip, the first 4k of nand is loaded to the beginning of ram and jump to, thats how it boots.
And this is what is loaded there

Code: Select all

:****************************************;
; ARM BootLoader.                        ;
;----------------------------------------;
; Prog by Dex.                           ;
; Coded with FasmARM.                    ;
; Part of the the x86 to ARM DexOS port. ;
; C:\fasmarm ArmBoot.asm ArmBoot.bin     ;
;                                        ;
;  C & B Bamford.2006(c)                 ;
;****************************************;
format binary
org	0			      ; code starts at offset 0.
use32				      ; use 32-bit code.

        b     reset                   ;
        b     undefined_instruction
        b     software_interrupt
        b     prefetch_abort
        b     data_abort
        b     not_used
        b     irq
        b     fiq

align 4

;********************************;
; boot start.                    ;
;********************************;
reset:
	mov r0, 0x4000000
	mov r1, 0x400
	add r1, r1, 3
	str r1, [r0]

	mov r0, 0x3101000
	mov r1, 0xff
	mov r2, 0x12c00
loop1:
	strh r1, [r0], 2
	subs r2, r2, 1
	bne loop1

LetsLoop:
	b LetsLoop

;********************************;
; just Loop For Now ;)           ;
;********************************;
undefined_instruction:
software_interrupt:
prefetch_abort:
data_abort:
not_used:
irq:
fiq:
LetsLoopForNow:
	b     LetsLoopForNow
Now "b label" is the same as "jmp label" in x86. so to setup software interrupts or IRQ is as simple as place you test code after the right label eg: "software_interrupt"
or "irq" etc.

The first bit of code thats run after booting or resetting, is it jumps to label "reset".
You can also making very small desktops
http://www.advantage6.com/products/A9home.html

@Zacariaz, Its a case of time, i have so many things to work on, but i will see what i can do.
User avatar
ucosty
Member
Member
Posts: 271
Joined: Tue Aug 08, 2006 7:43 am
Location: Sydney, Australia

Post by ucosty »

ARM would be my choice, if I had access to some good hardware. Something like http://www.simtec.co.uk/products/EB2410ITX/avail.html would be nice.
The cake is a lie | rackbits.com
User avatar
AndrewAPrice
Member
Member
Posts: 2299
Joined: Mon Jun 05, 2006 11:00 pm
Location: USA (and Australia)

Post by AndrewAPrice »

I think you're looking for something higher level than I'm suggesting, but if you want to start from scratch (building a custom PC + OS together) then look at http://www.opensparc.net/.

The T2 runs at around 1.4GHz. You just need to find somewhere that'll synthesise the Verilog source into an IC (must cheaper a prebuilt processor).

Then you'll need to build your own bridges for managing ports and interrupts which you'll might find designs for on the Internet. And a system clock.

For graphics you can find simple 2D microprocessors online, of you could look at a NVidia GoForce if you want advanced 3D power.

Physically building the system basically consists of using breadboards and stripboards and connecting connecting the pins together.
My OS is Perception.
User avatar
binutils
Member
Member
Posts: 214
Joined: Thu Apr 05, 2007 6:07 am

Post by binutils »

practically, we have few choices to programming, as you mentioned x86/arm/etc.

--
PS: Impractically, but my own choice is mmix or homebrewcpu or combo of that.
User avatar
bloodhound23
Member
Member
Posts: 115
Joined: Wed Jan 23, 2008 7:13 pm
Contact:

Post by bloodhound23 »

I wonder if you could write an OS for a GBA?
I thought I wasn't thinking, I thought wrong.
User avatar
Alboin
Member
Member
Posts: 1466
Joined: Thu Jan 04, 2007 3:29 pm
Location: Noricum and Pannonia

Post by Alboin »

bloodhound23 wrote:I wonder if you could write an OS for a GBA?
Homebrew has been accomplished on nearly every console, so yeah, it's possible. (eg. DSLinux)

I've been recently playing around with the DS myself.
C8H10N4O2 | #446691 | Trust the nodes.
User avatar
bloodhound23
Member
Member
Posts: 115
Joined: Wed Jan 23, 2008 7:13 pm
Contact:

Post by bloodhound23 »

I'll look this up, but how would you get an OS on to a GBA. What features does it have or could be added?(memory,hard disk, etc.)
I thought I wasn't thinking, I thought wrong.
User avatar
Alboin
Member
Member
Posts: 1466
Joined: Thu Jan 04, 2007 3:29 pm
Location: Noricum and Pannonia

Post by Alboin »

bloodhound23 wrote:I'll look this up, but how would you get an OS on to a GBA.
Via a flash cart. It'd be just like it was playing a game.
C8H10N4O2 | #446691 | Trust the nodes.
User avatar
bloodhound23
Member
Member
Posts: 115
Joined: Wed Jan 23, 2008 7:13 pm
Contact:

Post by bloodhound23 »

Is there anywhere I can find a manual for the GBA?
I thought I wasn't thinking, I thought wrong.
User avatar
Alboin
Member
Member
Posts: 1466
Joined: Thu Jan 04, 2007 3:29 pm
Location: Noricum and Pannonia

Post by Alboin »

gbadev.org seems to have quite a bit of info. (Please note that I've never done any GBA dev.)
C8H10N4O2 | #446691 | Trust the nodes.
User avatar
bloodhound23
Member
Member
Posts: 115
Joined: Wed Jan 23, 2008 7:13 pm
Contact:

Post by bloodhound23 »

I have decided against GBA dev.
I thought I wasn't thinking, I thought wrong.
User avatar
bloodhound23
Member
Member
Posts: 115
Joined: Wed Jan 23, 2008 7:13 pm
Contact:

Post by bloodhound23 »

I might try to make a custom system out of a z80 or two. If that's possible
I thought I wasn't thinking, I thought wrong.
earlz
Member
Member
Posts: 1546
Joined: Thu Jul 07, 2005 11:00 pm
Contact:

Post by earlz »

Go out and buy a TI-83+...they are Z80
Post Reply