An increasing number of embedded system solutions in space, military, and consumer electronics applications rely on processor cores inside reconfigurable logic devices. Ensuring data integrity and confidentiality is of the utmost importance in many such applications. This paper describes a practical implementation of security extensions for embedded systems built around soft-core processors. These extensions guarantee the integrity and confidentiality of sensitive data residing in external memory and prevent various types of physical attacks on systems working in adverse conditions. We describe the programming model, security architecture, and give an initial analysis of performance and complexity overheads caused by the security extensions.