perlunitut Definitions gives definitions for text, character, unicode (three terms for the same thing) and binary and byte (two terms for the same thing) strings. It also says a little about internal format. The other documents referenced in the SEE ALSO section provide more detail.
While the basic data types in Perl are three: scalar, array and hash, this is only one level of abstraction. If you delve a little deeper, you find that there are five types of values that can be loaded into a scalar, one of which is a string. There are various data structures used to store these types of values. You can read about this and more in perlguts and B. Other good sources on the internal data structures are Perl 5 Internals - Internal Variables and PerlGuts Illustrated. Ultimately, you might spend some time studying the source code, which is freely available but not a trivial endeavor.