Sign in

username:

password:



Not a member?

Search Comp.Arch.Embedded



Search tips

embedded by Keywords

68HC11 | 68HC12 | 8051 | 8052 | ARM | ARM7 | Asic | AT91 | AT91RM9200 | Atmel | AVR | AVRStudio | Bootloader | CFP | CompactFlash | Cygnal | Cypress | Dataflash | DSP | eCos | EEPROM | Embedded Linux | Emulator | Endian | Ethernet | Firewire | FPGA | Freescale | GCC | GNUARM | GSM | H8 | HDLC | I2C | Infineon | Interrupts | Java | JTAG | LCD | LED | LPC2000 | MCU | Microchip | MMC | MPLAB | MSP430 | PC104 | PCB | PCI | PCMCIA | PowerPC | Rabbit | RS232 | RS485 | RTOS | SBC | SDRAM | Sensor | SPI | STK500 | UART | UML | USART | USB | Verilog | VHDL | VxWorks | Xilinx

Discussion Groups

Discussion Groups | Comp.Arch.Embedded | difference btw H/W & S/W implementations !!

There are 19 messages in this thread.

You are currently looking at messages 0 to 10.

difference btw H/W & S/W implementations !! - OP - 16:09 25-02-04



Hi,

Feeling really intelligent today.. I would like to know some basic
stuff..

What is the difference between a hardware implementation of an
algorithm and a software one.  

How do you say an algorithm is faster in one and slower in other.. if
it's based on timing how do you do that?? What makes it faster in one
and not in other??

all the help is appreciated.

OP.

Re: difference btw H/W & S/W implementations !! - Vadim Borshchev - 16:29 25-02-04

On 25 Feb 2004 13:09:41 -0800, OP <o...@hotmail.com> wrote:

> Hi,
>
> Feeling really intelligent today.. I would like to know some basic
> stuff..


> NNTP-Posting-Host: 128.193.4.98

~/cvs> whois 128.193.4.98

OrgName:    Oregon State University
OrgID:      OSU-3
Address:    Network Services
Address:    Milne Hall 217
City:       Corvallis
StateProv:  OR
PostalCode: 97331
Country:    US


Why not walk into the uni library and get yourself a book?  (Feeling 
really smart pants today ...)

Re: difference btw H/W & S/W implementations !! - Kevin Neilson - 17:13 25-02-04

Everything is essentially done in hardware.  A processor is hardware.  I
guess the main difference is when you build the hardware for a less general
application.  Generally, the hardware implementation will be more parallel
to make it faster.  The more parallelism, the more hardware you need, and
the faster the operation.
-Kevin

"OP" <o...@hotmail.com> wrote in message
news:a...@posting.google.com...
> Hi,
>
> Feeling really intelligent today.. I would like to know some basic
> stuff..
>
> What is the difference between a hardware implementation of an
> algorithm and a software one.
>
> How do you say an algorithm is faster in one and slower in other.. if
> it's based on timing how do you do that?? What makes it faster in one
> and not in other??
>
> all the help is appreciated.
>
> OP.



Re: difference btw H/W & S/W implementations !! - glen herrmannsfeldt - 17:44 25-02-04

Kevin Neilson wrote:
> Everything is essentially done in hardware.  A processor is hardware.  I
> guess the main difference is when you build the hardware for a less general
> application.  Generally, the hardware implementation will be more parallel
> to make it faster.  The more parallelism, the more hardware you need, and
> the faster the operation.

Except if it is microcoded, then it is software even though
it looks like hardware.  You can never be too sure.
It could still be faster than non-microcoded versions, too!

-- glen


Re: difference btw H/W & S/W implementations !! - Rene Tschaggelar - 17:51 25-02-04

OP wrote:
> Hi,
> 
> Feeling really intelligent today.. I would like to know some basic
> stuff..
> 
> What is the difference between a hardware implementation of an
> algorithm and a software one.  
> 
> How do you say an algorithm is faster in one and slower in other.. if
> it's based on timing how do you do that?? What makes it faster in one
> and not in other??

Hardware implementations tend to be faster because the parallelize
the work to be done.
As example take a multiplication. It can be done in software by
shift & add or with a hardware multiplier which does if required
the lot in one clock cycle.

Rene
-- 
Ing.Buero R.Tschaggelar - http://www.ibrtses.com
& commercial newsgroups - http://www.talkto.net

Re: difference btw H/W & S/W implementations !! - Andrew Reilly - 18:39 25-02-04

On 25 Feb 2004 13:09:41 -0800, OP wrote:
> What is the difference between a hardware implementation of an
> algorithm and a software one.  

It's all hardware.  If it's not hardware, it's not doing
anything (see question below).

> How do you say an algorithm is faster in one and slower in other.. if
> it's based on timing how do you do that?? What makes it faster in one
> and not in other??

The faster one is the one that takes less time to do whatever
it was that you wanted done.  This involves actually doing
the thing in question.  Only hardware actually does stuff,
therefore, ipso facto, hardware is faster.

As my Dad used to say: as fast as ten thousand gazebos.

-- 
Andrew

Re: difference btw H/W & S/W implementations !! - Mickey - 01:41 26-02-04

> What is the difference between a hardware implementation of an
> algorithm and a software one.

Hardware implementation would be like floating point mathematics in
DSP microcontroller, so DSP has instructions which dirrectly execute
in processor in 1 cycle, and software implementation would take
50 or something like that instructions on processor that doesn't have
floating point math hardware.

> How do you say an algorithm is faster in one and slower in other.. if
> it's based on timing how do you do that?? What makes it faster in one
> and not in other??

It should be obvious from my answer to previous question.

You can look on hardware solution as a washing machine, you can wash
faster with it than by hands (software approach), to get the same quality.

Mickey



Re: difference btw H/W & S/W implementations !! - Thomas Stanka - 02:51 26-02-04

Hello OP,

hope you got an better name in your next life. 

o...@hotmail.com (OP) wrote:
> Feeling really intelligent today.. I would like to know some basic
> stuff..
> 
> What is the difference between a hardware implementation of an
> algorithm and a software one.  

HW & SW are uncomparable in general because SW w/o HW makes no sence.

In some context you speak of HW or SW solution when you mean the
decission to use either
- a general purpose CPU (eg. micro controller) and write the
appropriate SW for this CPU
or
- build an ASIC (application specific IC, could of course be a fpga
too) that solves your problem.

In general is an ASIC faster and fits better in your special needs for
reliability, power consumption and size, but tends to be more
expensive (unless  huge quantities) and you have big trouble when you
find a better algorithm for your problem.
   
You would think twice before using an ASIC for data compression on the
other hand it's impossible to do very high speed realtime data
processing (eg. 10GB Switch) with a CPU.

bye Thomas

Re: difference btw H/W & S/W implementations !! - john jakson - 09:35 26-02-04

Andrew Reilly <a...@gurney.reilly.home> wrote in message
news:<slrnc3qchh.1coi.a...@gurney.reilly.home>...
> On 25 Feb 2004 13:09:41 -0800, OP wrote:
> > What is the difference between a hardware implementation of an
> > algorithm and a software one.  
> 
> It's all hardware.  If it's not hardware, it's not doing
> anything (see question below).
> 
> > How do you say an algorithm is faster in one and slower in other.. if
> > it's based on timing how do you do that?? What makes it faster in one
> > and not in other??
> 
> The faster one is the one that takes less time to do whatever
> it was that you wanted done.  This involves actually doing
> the thing in question.  Only hardware actually does stuff,
> therefore, ipso facto, hardware is faster.
> 
> As my Dad used to say: as fast as ten thousand gazebos.

And what do you say if the native programming language for a cpu is
very friendly to running event driven and parallel code such as Occam
or better still HDL. Then you can write something like Verilog or
HandelC on a cpu and call it HW at least for some types of apps that
might actually be HW or SW. And you can take that same code or pieces
of it and synth it into HW too with synthesis for some speedups if you
know what you are doing. What would be the natural way for the HW(SW)
to communicate with the SW(HW), probably messages at the interface
between event scheduler and actual HW. occam made this sound easy, but
HDL needs some thinking about.

Re: difference btw H/W & S/W implementations !! - Shiraz Kaleel - 02:07 29-02-04

I am surprised nobody really answered to the point!

Software is when sequencing through the algorithm is done using INSTRUCTION
power

Hardware is when sequencing through the algorithm is done using LOGIC
power...!!!



"Thomas Stanka" <u...@stanka-web.de> wrote in message
news:e...@posting.google.com...
> Hello OP,
>
> hope you got an better name in your next life.
>
> o...@hotmail.com (OP) wrote:
> > Feeling really intelligent today.. I would like to know some basic
> > stuff..
> >
> > What is the difference between a hardware implementation of an
> > algorithm and a software one.
>
> HW & SW are uncomparable in general because SW w/o HW makes no sence.
>
> In some context you speak of HW or SW solution when you mean the
> decission to use either
> - a general purpose CPU (eg. micro controller) and write the
> appropriate SW for this CPU
> or
> - build an ASIC (application specific IC, could of course be a fpga
> too) that solves your problem.
>
> In general is an ASIC faster and fits better in your special needs for
> reliability, power consumption and size, but tends to be more
> expensive (unless  huge quantities) and you have big trouble when you
> find a better algorithm for your problem.
>
> You would think twice before using an ASIC for data compression on the
> other hand it's impossible to do very high speed realtime data
> processing (eg. 10GB Switch) with a CPU.
>
> bye Thomas



| 1 | 2 | next