See architecture and design.
The software architecture of a program
or computing system is the structure
or structures of the system, which
comprise software components, the
externally visible properties of those
components, and the relationships
between them. [...]
Documenting software architecture
facilitates communication between
stakeholders, documents early
decisions about high-level design, and
allows reuse of design components and
patterns between projects.
--
Software design is a process of
problem-solving and planning for a
software solution. After the purpose
and specifications of software are
determined, software developers will
design or employ designers to develop
a plan for a solution. It includes
low-level component and algorithm
implementation issues as well as the
architectural view.
--
So they share parts with each other, but they refer to slightly different aspects of software. Technically speaking, architecture should include all aspects, but in reality they usually refer to high level topology or structure of software.
For example, making decision about whether to implement a system as a file-based command line software, a web app, or an n-tier rich internet application would be an architectural decision.
Software design includes making architectural decisions, but it would include much deeper ones like how many characters address1
should be in a database, which is not really an architectural decision.
Edit:
To simplify the difference, architecture refers to known patterns of software solution, often involving placement and relationships between subcomponents/tiers/layers. The patterns also specify how and where the data is stored, processed, and presented.
An architecture is something that could be described using boxes and arrows, such as autonomous robotic paradigms.
The software design is a process of thinking about solutions to the given software requirements. Each problem is unique in its own ways, so design would be different.